0

OLEDB ソースと OLEDB 宛先を含むデータ フロー タスクを含む SSIS パッケージがあります。ここでも、dtexec コマンドを使用して SSIS パッケージを実行するためのバッチ ファイル (.bat ファイル) があります。バッチ ファイルでは、oledb 宛先の接続マネージャーの ConnectionString プロパティを設定しています。複数の Destination テーブルに同時にデータを入力する必要があるため、SSIS パッケージを Destination ConnectionString の異なる値で並列に実行する必要があります。

宛先接続マネージャーの接続文字列に異なる値を設定して、同じ SSIS パッケージを同時に並列実行できるようにバッチ ファイル コマンドを変更するにはどうすればよいですか?

4

2 に答える 2

2

コンソール アプリケーションを並行して実行するには、START コマンドを使用する必要があります。最初のパラメーターとしてタイトルを追加することを忘れないでください。空のタイトルの最初のパラメーターとして空の引用符を使用できます。

start "" yourProgram.exe parameter1 parameter2 ...

開始する各コマンドは、独自のコンソール ウィンドウで実行されます。詳細情報を取得するには、コマンドプロンプトからstart /?orを入力します。help start

于 2013-01-21T13:50:53.037 に答える
1

ドベンハムは正しいです。バッチ ファイルで Start コマンドを使用します (例を使用)。

start "インスタンス 1" dtexec /FILE "C:\Users\Desktop\SSIS\PKG.dtsx" /MAXCONCURRENT " 2 " /SET "\Package.Connections[Destination].Properties[ConnectionString]";\""Data Source= datasrc1;初期カタログ=db1;ユーザー ID=usrid;パスワード=pswd;プロバイダー=SQLOLEDB.1;"\"

start "インスタンス 2" dtexec /FILE "C:\Users\Desktop\SSIS\PKG.dtsx" /MAXCONCURRENT " 2 " /SET "\Package.Connections[Destination].Properties[ConnectionString]";\""Data Source= datasrc2;初期カタログ=dbn2;ユーザー ID=usrid;パスワード=pswd;プロバイダー=SQLOLEDB.1;"\"

これらは、異なる Destination ConnectionString 値で並行して実行されます。

于 2013-01-24T13:43:08.343 に答える