0

レコードを分割して MYSQL データベースに更新または挿入する SQL Server ソースからの条件付き分割を持つ SSIS パッケージを作成しています。

  • SQL Server 接続には、OldDB\SQL Server Native Client 10.0 のプロバイダー .NET プロバイダーがあります。

  • MYSQL 接続は MYSQL ODBC 5.1 ADO.NET 接続です。

条件付き分割から分岐する OLE DB コマンドを使用してレコードを更新することを考えていましたが、これを使用して MYSQL データベースに接続します。

このタスクを達成する方法を知っている人はいますか?

4

2 に答える 2

0

更新するPKと列を含む更新用のステージングテーブルに書き込み、そのテーブルと更新するテーブルを使用してUPDATESQLステートメントを実行します。別の方法は、すべての行にコマンドを使用することですが、私の経験では、少なくともそれは素晴らしいファットバッチ挿入と単一の更新コマンドと比較して、それほどうまく機能していないようです。

さらに言えば、条件付き分割をまったく行わずに、すべてをステージングテーブルに書き込んでから、SQLでUPDATEとINSERTを連続して使用できると思います。

于 2011-08-18T17:49:01.227 に答える
0

おそらく、次の MSDN ブログのリンクが役立つかもしれません。私はこれを試していません。

OLEDB プロバイダーがない場合、UPDATE と DELETE を行うにはどうすればよいですか?

この投稿では、次の 3 つのオプションが提案されています。

  1. スクリプト コンポーネント
  2. データを Recordset に格納する
  3. カスタム コンポーネントを使用する ( Merge destination componentなど)

著者は、上記の記事を投稿する前に、MySQL に関する他の 2 つの記事も投稿していました。

SSIS から MySQL への接続

SSIS から MySQL データベースへの書き込み

それがあなたを正しい方向に向けることを願っています。

于 2011-08-21T20:34:53.543 に答える