同期モデル作成ウィザードを使用すると、統合データベースとリモート・データベースの間の同期を順を追って設定できます。
Sybase Central を起動します。
[ツール] - [Mobile Link 11] - [Mobile Link の同期の設定] をクリックします。
新しい同期モデルに sync_oracle という名前を付け、このモデルのロケーションを入力します。
[プライマリ・キー要件] ページで、3 つのチェックボックスをすべて選択します。
[統合データベース・スキーマ] ページで、統合データベースに接続します。
[統合データベースの選択] をクリックします。
[ODBC データ・ソース名] を選択してから、oracle_cons を選択します。[OK] をクリックします。
Mobile Link が今回初めて統合データベースを使用する場合、Mobile Link システム設定をインストールするかどうか確認するメッセージが表示されます。Mobile Link システム設定をインストールすると、Mobile Link システム・テーブルと Mobile Link システム・プロシージャが追加されます。[はい] をクリックします。
エラー・メッセージが表示された場合は、データ・ソースが正しく設定されているか確認します。
Mobile Link システム・テーブルと Mobile Link システム・プロシージャが統合データベースに追加されると、名前、ユーザ、製品、バージョンがページ上に表示されます。[次へ] をクリックします。
統合データベース・スキーマからテーブルがロードされます。
次の手順でリモート・スキーマを作成します。
[リモート・データベース・スキーマ] ページで [いいえ、新しいリモート・データベース・スキーマを作成します] を選択し、[次へ] をクリックします。
[新しいリモート・データベース・スキーマ] ページで、リモート・スキーマに追加する次のテーブルのチェックボックスをオンにして、[次へ] をクリックします。
ダウンロード・タイプを次の手順で選択し、設定します。
[ダウンロード・タイプ] ページで、[タイムスタンプベースのダウンロード] を選択します。
タイムスタンプベースのダウンロードを選択すると、前回のダウンロード以降に更新されたデータのみが転送されるため、データ量を最小限に抑えることができます。
[タイムスタンプ・ダウンロードのオプション] ページで、[シャドー・テーブルを使用してタイムスタンプ・カラムを保持する] を選択します。
シャドー・テーブルを使用すると既存のテーブルを変更する必要がないため、推奨されることが多くあります。
[削除のダウンロード] ページで、リモート・デバイスにレコードの削除を伝達する方法を次のように指定します。
リモート・データベースが削除をダウンロードするようにするには、[はい] を選択します。
[シャドー・テーブルを使用して削除を記録する] を選択します。
シャドー・テーブルが統合データベースに作成され、削除が実装されます。
[サブセットのダウンロード] ページで、リモート・データベースが統合データベースのデータのサブセットのみをダウンロードするように指定します。
[はい、各リモート・データベースに同じデータをダウンロードします] をクリックします。(モデル・モードのレッスンの手順 2 で、カスタム論理を使用して特定のデータをリモート・データベースにダウンロードする方法を指定します。)
[アップロード競合の検出] ページで、[競合検出を実行しない] を選択します。
多くのアプリケーションでは競合の検出が必要ですが、このチュートリアルでは実行しません。
[パブリケーション、スクリプト・バージョン、説明] ページで、パブリケーション名として sync_oracle_publication と入力し、スクリプト・バージョンとして sync_oracle_scriptversion と入力します。
パブリケーションは、同期するデータを指定するリモート・データベース上のオブジェクトです。Mobile Link サーバのスクリプトにより、リモート・データベースからアップロードされたデータを統合データベースに適用する方法と、スクリプト・バージョンによりスクリプトをグループ化する方法が定義されます。アプリケーションごとに異なるスクリプト・バージョンを使用できるため、1 つの Mobile Link サーバを管理するだけで複数のアプリケーションを同期できます。
[完了] をクリックします。
モデルがモデル・モードで表示されます。
データの同期方向を指定するには、[マッピング方向] カラムで次のように方向を設定します。
リモート・データベースにダウンロードされたローを、リモート ID を基準として次のようにフィルタします。
ORDERS テーブルで、[サブセットのダウンロード] を [カスタム] に変更します。
画面下部の [サブセットのダウンロード] タブを開きます。
リモート ID はリモート・データベースをユニークに識別します。リモート ID を基準にローをフィルタするには、download_cursor スクリプトの WHERE 句に制限を追加します。この処理を行うには、[ダウンロード・カーソルの WHERE 句で使用する SQL 式] テキスト・ボックスで次のように探索条件を入力します。
"OE"."ORDERS"."SALES_REP_ID" = {ml s.remote_id} |
ダウンロード・カーソル・スクリプトは、各テーブルからどのカラムとローをリモート・データベースにダウンロードするかを指定します。探索条件の指定により、1 人の販売担当者 (データベースのリモート ID が一致する担当者) に関する情報のみをダウンロードするようにすることができます。
同期モデルを保存します。
同期モデルが完成して、展開の準備が完了します。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |