CData SSIS Components を使用して SQL Server から MySQL レコードを新規挿入または既存を更新

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
CData SSIS Components を使用して SQL Server データを MySQL に簡単にプッシュできます。この例では、SSIS ワークフローを使用して、SQL Server データベースのデータで MySQL に新しいレコードを挿入するか、既存のレコードを更新します。

SQL Server データベースは、エンタープライズレコードの保存に広く使用されています。このデータを他の場所に移動する必要がある場合がよくあります。CData SSIS Components for MySQL を使用すると、SQL Server から MySQL にデータを簡単に転送できます。

この記事では、CData SSIS Components for MySQL を SQL Server Integration Services ワークフロー内で使用して、SQL Server から MySQL にデータをエクスポートする方法を説明します。ルックアップコンポーネントを活用して、既存のレコードを検索・更新するか、新しいレコードを挿入します。

コンポーネントの追加

まず、新しい OLE DB ソース、CData MySQL ルックアップ、および 2 つの CData MySQL デスティネーション(ルックアップで一致した場合と一致しなかった場合をそれぞれ処理)を新しい Data Flow Task に追加します。

OLE DB ソースの設定

以下の手順に従って、SQL Server インスタンスへの接続に必要なプロパティを指定します。

  1. OLE DB Source を開き、新しい接続を追加します。ここでサーバーとデータベースの情報を入力します。
  2. Data access mode メニューで「Table or view」を選択し、MySQL にエクスポートするテーブルまたはビューを選択します。
  3. OLE DB Source ウィザードを閉じ、CData MySQL Destination に接続します。

MySQL 用の新しい Connection Manager を作成

以下の手順に従って、Connection Manager に接続プロパティを保存します。

  1. 新しい Connection Manager を作成します:Connection Manager ウィンドウで右クリックし、New Connection をクリックします。Add SSIS Connection Manager ダイアログが表示されます。
  2. Connection Manager type メニューで CData MySQL Connection Manager を選択します。
  3. 接続プロパティを設定します。通常、MySQL 接続には以下が必要です:
    • User
    • Password
    • AccessToken

MySQL ルックアップの設定

ルックアップコンポーネントの Transform Editor で、SQL Server ソーステーブルから MySQL ルックアップテーブルへのマッピングを定義します。

  1. MySQL ルックアップをダブルクリックして、ルックアップコンポーネントエディタを開きます。
  2. Connection タブで、先ほど作成した Connection Manager を選択します。
  3. Connection タブで、Connection Manager を指定(または新規作成)し、データがアップサートされるテーブルを指定します。この例では、Account レコードを転送します。
  4. Columns タブで、入力カラムの主キーからルックアップカラムの主キーへのマッピングを設定します。

MySQL デスティネーションの設定

ルックアップコンポーネントを使用すると、データソースのどのエントリが MySQL に既に存在し、どのエントリが新規であるかがわかります。一致が見つかった場合と見つからなかった場合を処理する 2 つの MySQL コンポーネントを設定します。

ルックアップ一致デスティネーション

ルックアップコンポーネントが一致を返した場合、MySQL の既存レコードを更新します。

  1. Lookup Match Output を MySQL デスティネーションコンポーネントにマップします。
  2. MySQL デスティネーションをダブルクリックして、デスティネーションコンポーネントエディタを開きます。
  3. Connection Manager タブで、先ほど作成した Connection Manager を選択します。
  4. 更新するテーブルを指定し、Action を「Update」に設定します。
  5. Column Mappings タブで、入力カラムからデスティネーションカラムへのマッピングを設定します(SQL Server の主キーカラムを MySQL の主キーカラムにマップすることを忘れずに)。

ルックアップ不一致デスティネーション

ルックアップコンポーネントが一致を返さなかった場合、MySQL に新しいレコードを追加します。

  1. Lookup No Match Output を MySQL デスティネーションコンポーネントにマップします。
  2. MySQL デスティネーションをダブルクリックして、デスティネーションコンポーネントエディタを開きます。
  3. Connection Manager タブで、先ほど作成した Connection Manager を選択します。
  4. 新しいレコードを挿入するテーブルを指定し、Action を「Insert」に設定します。
  5. Column Mappings タブで、入力カラムからデスティネーションカラムへのマッピングを設定します。

プロジェクトの実行

これでプロジェクトを実行できます。 SSIS Task の実行が完了すると、SQL テーブルのデータが選択したテーブルにエクスポートされます。

はじめる準備はできましたか?

MySQL SSIS Component の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

MySQL Icon MySQL SSIS Components お問い合わせ

SSIS ソース元 & 接続先コンポーネントは、SQL Server SSIS のワークフロー内で簡単にMySQL 互換データベースエンジンに接続できるパワフルなツールです。

データフロー内のMySQL コンポーネントを使ってMySQL を同期できます。データ同期、ローカルバックアップ、ワークフローの自動化などに最適!