Mobile Link では、データを同期するときに使用する規則を定義するために、同期スクリプトを使用しています。同期スクリプトでは次の内容を定義します。
リモート・データベースからアップロードしたデータを、統合データベースに適用する方法。
統合データベースからリモート・データベースにダウンロードするデータ。
同期スクリプトの作成を参照してください。
スクリプトに記述できるイベントの一覧については、同期イベントを参照してください。
各タイプの統合データベースの固有の情報については、以下の項を参照してください。
データベースが使用している SQL 言語のバージョンで同期論理を記述できます。Java または .NET を使用して、より移植性が高く、強力なスクリプトを記述することもできます。Java と .NET は両方とも、各 RDBMS で SQL を使用した場合よりも高い柔軟性を提供し、SQL との完全な互換性も実現します。Java または .NET の同期論理を使用する場合は、セッション全体の変数の保持、ユーザ定義のプロシージャの作成、外部サーバに対する認証の統合などを行うことができます。
Java 同期論理については、Java 同期論理の作成を参照してください。
.NET 同期論理については、.NET での同期スクリプトの作成を参照してください。
Microsoft SQL Server などのいくつかのデータベースでは、パラメータを持つプロシージャ・コールは、ODBC の構文を使用して記述する必要があります。
{ CALL procedure_name( {ml param1}, {ml param2}, ... ) } |
プロシージャ定義の中でパラメータを OUT または INOUT として定義することで、戻り値を返すことができます。
他の多くの RDBMS では、CHAR データ型は固定長で、文字列の長さに合わせてブランクが埋め込まれています。Mobile Link リモート・データベース (SQL Anywhere または Ultra Light) では、CHAR は VARCHAR と同じで、固定幅に合わせて値にブランクが埋め込まれることはありません。SQL Anywhere を統合データベースとして使用していない場合は、統合データベースで CHAR の代わりに VARCHAR を使用することを強くおすすめします。CHAR を使用する必要がある場合は、mlsrv11 -b コマンド・ライン・オプションを使用すると、同期中に文字列から後続ブランクを削除できます。このオプションは、重複を検出するときに使用する文字列の比較にとって重要です。
-b オプションを参照してください。
Mobile Link サーバが、SQL Anywhere 以外の統合データベースと通信するときに行われるデータ変換については、リモート・データベースと統合データベース間での Mobile Link データ・マッピングを参照してください。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |