Demo1
新しいデータベースを作成する
ssistest
新しいテーブルを作成する

テーブル名はimport
元ネタ.txtを見せる
Visual Studioを立ち上げる
作成-プロジェクト
ビジネスインテリジェンス-ISプロジェクト

デフォルトで作成
ツールボックスの中身を見せて

データフローを落とす

ダブルクリックして
フラットファイルから読み込むので、変換元にフラットファイルソースを配置
ダブルクリックで編集

接続マネージャがないので、新規作成
各種設定をするが、詳細設定列だけ入念に
OutputColumnWidthは8000にしておく

次にデータ変換タスクを置く

つなぐ

データ変換でN_TEXTに変換する

次はOLEDB変換先を置く

つなぐ

接続先を設定する

カンタンチン

マッピング

実行や

緑は成功

SSMSで確認
よっしゃできてるで。

Demo2
おかねテーブル

テストデータを入れておく

おかね集計テーブル

SQL実行タスクをぽとぺた

コネクションを設定する
コマンドを設定する
insert into おかね集計
select getdate(), sum(金額) from おかね
実行

とりあえず成功

はいってまーす

パッケージをインストールしましょう
プロジェクト→プロパティ
CreateDeploymentUtility=True

Ctrl+Shift+B
Explorerでさぐりあてる
.SSISDeploymentManifestをクリック

完了
Integration Serviceに接続

入っていることを確認する

エージェントの有効
exec sp_configure 'Agent XPs', 1
go
reconfigure
go
エージェントを起動して
ジョブの新規作成

ステップの新規作成

スケジュールの作成
定期的,毎日,間隔1分
これで1分に1回流れ始めます。
おかねを追加してみたりして、集計が変わることを確認しましょう

はい大成功
ジョブとパッケージは削除しておきましょう。
デモ3
もう一度フラットファイルソースを作成する。

スクリプトコンポーネントをDD
![]()
変換を選ぶ

つなぐ

出力列を作る
型はNTEXT

スクリプトのデザイン
Row.

参照設定もできるよー
適当に編集するようにする
OLE DBに出力する

もちろんマッピングを忘れずに
あそうそう、データが残っちゃってるから、毎回消しましょうね。

実行

デモ4
SQL実行タスクを追加

Connectionを設定
SQLStatementにtruncate table [dbo].[import]
を記述

For-Eachコンテナを置く

つなぐ
変数を作成する
![]()
ファイルの一覧を取得するところを設定する

変数のマッピングをする

次にコンテナ内にデータフロータスクを入れる

スクリプトコンポーネントを置く
今回は変換元

列追加

今回はDT_WSTR 4000 Name=ファイル名
ReadOnlyVariablesにFileNameを記述

スクリプトに移動
コードを書く
Me.出力Buffer.AddRow()
Me.出力Buffer.ファイル名= Me.Variables.FileName
AddRow忘れるな
データ変換を置いてつなぐ

DT_WSTRをDT_NTEXTに変換

OLEDB変換先を置いて、つなぐ

テーブルimportを指定

マッピングする

制御フローに戻って、データフローをこぴぺ

スクリプトを開く

出力列をファイル名からファイルサイズに変更

コードを書く
Me.出力Buffer.AddRow()
Me.出力Buffer.ファイルサイズ= New System.IO.FileInfo(Me.Variables.FileName).Length.ToString()
データ変換で変数名を変更しましょうね。
出力先も確認しましょう。・
実行

じらじら並列実行

こんな感じで完全に並列処理成功
