ノーコードでクラウド上のデータとの連携を実現。
詳細はこちら →こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
この記事では、CData BizTalk Adapter for MySQL で実行できるアップデートグラムを作成します。設計したスキーマは、インサート、アップデート、デリートのアップデートグラムを作成するためのテンプレートとして使用します。
[Add Adapter] ウィザードから、アダプターをVisual Studio のBizTalk サーバープロジェクトに追加します。アダプターを使って、修正したいテーブルに関するMySQL のメタデータをクエリします。
以下のステップに従って、Visual Studio のBizTalk サーバープロジェクトでスキーマを作成します。
User=myUser;Password=myPassword;Database=NorthWind;Server=myServer;Port=3306;
Server およびPort プロパティがMySQL への接続には必須です。IntegratedSecurity をFALSE に設定した場合、User、Password も必須になります。 オプションで、Database を設定することもできます。Database は設定がない場合すべてのデータベースを使えるようになります。
パスワード方式によるSSH接続時に必要なプロパティ一覧を以下に示します。
接続文字列形式では以下のようになります。
User=admin;Password=adminpassword;Database=test;Server=mysql-server;Port=3306;UseSSH=true;SSHAuthMode=Password;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHPassword=sshpasswd;
公開鍵認証によるSSH接続時に必要なプロパティ一覧を以下に示します。
接続文字列形式では以下のようになります。
User=admin;Password=adminpassword;Database=test;Server=mysql-server;Port=3306;UseSSH=true;SSHAuthMode=Public_Key;SSHClientCertType=PUBLIC_KEY_FILE;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHClientCert=C:\Keys\key.pem;
接続プロパティの詳細は、ヘルプドキュメントの"BizTalk Configuration" チャプターを参照してください。
Noteアップデートグラムを作成する際、修正はスキーマに含ませたカラムに限定されます。
アップデートグラムスキーマの作成後、アップデートグラムを生成する.xsd ファイルを使用できます。.xsd ファイルを右クリックし、[Generate Instance]を選択します。このファイルは、アップデートグラムを手動で作成するテンプレートとして使用することもできます。以下は、インサート、アップデート、デリートそれぞれに生成されたアップデートグラムインスタンスの例です。
まず、インサートの一例です。このインスタンスでは、データの変化を指定するafter ブロックのみを扱います。
<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/MySQLProvider">
<ns0:sync>
<ns0:before></ns0:before>
<ns0:after>
<ns0:Orders ShipName="ShipName_0" Freight="Freight_1" />
</ns0:after>
</ns0:sync>
</ns0:parameters>
次に、アップデートの一例です。このインスタンスでは、before ブロック(テーブルに存在するデータ)と、after ブロック(データの変化)の両方を扱います。
<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/MySQLProvider">
<ns0:sync>
<ns0:before>
<ns0:Orders Id=001d000000YBRseAAH></ns0:Orders>
</ns0:before>
<ns0:after>
<ns0:Orders ShipName="ShipName_0" Freight="Freight_1" ></ns0:Orders>
</ns0:after>
</ns0:sync>
</ns0:parameters>
最後に、デリートの一例です。after ブロックは空になり、アイテムを除去していることを示します。
<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/MySQLProvider">
<ns0:sync>
<ns0:before>
<ns0:Orders Id=001d000000YBRseAAH></ns0:Orders>
</ns0:before>
<ns0:after></ns0:after>
</ns0:sync>
</ns0:parameters>
MySQL レコードのインサート、アップデート、デリートにアップデートグラムを使用するには、こちらのチュートリアルをご覧ください。