CData Software Blog

クラウド連携のCData Software の技術ブログです。

デフォルト指定されたデータ型を変更して同期先DBにレプリケートする方法:CDataSync

f:id:sennanvolar44:20211116175609p:plain こんにちは、テクニカルサポートエンジニアの宮本です。

今回はCDataSync のちょっとした Tips をご紹介します。

「CDataSync上で決め打ちされたデータ型を変更することはできないのか?」と、たまに受けるのですが、これ実はできます。
基本的には CData Sync 側でエラーにならないよう、同期先DB に合った型で定義されるのですが、それでもデフォルト定義されたデータ型を変更したいというときがあるかと思います。そんなときに使える内容です。

ではさっそくやり方をみていきましょう。

データ型を変更する方法

この内容で登録されている CSVMySQL にレプリケートしてみます。

"ID","案件名","更新日時","作成日時","更新者"
"69","ウッドグローブ銀行案件1","CData 太郎1",2020-06-22T13:44:00.0000000+09:00,"2017-11-07T20:11:00.0000000+09:00"
"70","ウッドグローブ銀行案件2","CData 太郎2",2020-06-23T13:44:00.0000000+09:00,"2017-11-07T20:11:00.0000000+09:00"
"71","ウッドグローブ銀行案件3","CData 太郎3",2020-06-24T13:44:00.0000000+09:00,"2017-11-07T20:11:00.0000000+09:00"

CSVMySQL のジョブ&クエリを作成後、作成したクエリをクリックします。
f:id:sennanvolar44:20211116172236p:plain

カラムマッピングタブを表示します。このとき、案件名が LONGTEXT で定義さてれていますが、これを VARCHAR に変更したいと思います。
f:id:sennanvolar44:20211116172113p:plain

まず、画面下部のカスタムクエリという部分をオンにしてクエリを更新できるようにしたら、クエリの後ろに ("項目名" データ型(サイズ)) を付与します。
今回は ("案件名" VARCHAR(30)) で定義しました。
f:id:sennanvolar44:20211116172843p:plain

最後にジョブを実行してます。
f:id:sennanvolar44:20211116173349p:plain

ジョブが正常終了したので MySQL 側を確認してみると、確かに案件名のデータ型が VARCHAR(30) で定義されていました!

f:id:sennanvolar44:20211116173655p:plain

おわりに

いかがでしたでしょうか。もしデータ型を変更したい場合は、この手法をお試しいただけたらと思います。
なお、CData Sync は30日間の無償トライアルが可能です。トライアルの時点でテクニカルサポートへの問合せができますので、是非お試しください~

www.cdata.com