このチュートリアルでは、download_cursor 同期スクリ プトを実装します。
• Push 要求を格納するテーブル
このテーブルを移植すると、リモート通知がトリガされ ます。
2 Notifier ユーティリティを設定します。
begin_connection、begin_poll、request_cursor、request_delete イ ベントを処理する論理を指定します。
3 ゲートウェイと Carrier を設定します。
このチュートリアルでは、UDP Listener 用のデフォルトの ゲートウェイ設定を使用します。
4 -notifier オプションを使用して Mobile Link 同期サーバを起動
します。
❖
リモート・データベースと
Listnerユーティリティを設定す るには、次の手順に従います。
1 同期で使用するテーブルを含む Adaptive Server Anywhere デー タベースを作成します。
このテーブルは、統合データベースの Dealer テーブルと同期 します。
2 リモート同期パブリケーション、同期ユーザ、および同期サ ブスクリプションを作成します。
3 Mobile Link Listener 用のコマンド・ライン・ファイルである
dblsn.txt を作成します。
4 ローカルの UDP Listener を起動します。
❖ Push
要求を発行するには、次の手順に従います。
• Push 要求を発行するには、データを直接 Push 要求テーブル
に挿入するか、Notifier の begin_poll イベントが Push 要求テー ブルを移植するような変更を加えます。各要求により、
Notifier は request_cursor イベントを使用してメッセージを送 信します。
Push 要求のメッセージが 'sync' などの Listener コマンド・ファ イルに定義されたメッセージと一致する場合、リモート・
データベースは同期を行います (または対応するアクション を実行します)。
統合データベースと Notifier ユーティリティの設定
このセクションでは、Push 要求を生成するメカニズムを含む統合 データベースを作成し、Notifier ユーティリティを設定して、Mobile Link 同期サーバを起動します。
Adaptive Server Anywhere データベースを作成する方法の 1 つに、
dbinit コマンド・ライン・ユーティリティを使用するやり方がありま す。このチュートリアルでは、cons という統合データベースを使用 します。
❖ Adaptive Server Anywhere
統合データベースを作成して起 動するには、次の手順に従います。
1 コマンド・プロンプトで、データベースを作成するディレク トリに移動します。
2 次のコマンドを入力して、データベースを作成します。
dbinit cons.db
3 ここで、次のように入力してデータベースを起動します。
dbeng9 cons.db
統合データベース・
スキーマの生成
統合データベース・スキーマには、Dealer テーブル、
dowonload_cursor 同期スクリプト、およびサーバ起動同期の Push 要求 を生成するテーブルとストアド・プロシージャが含まれています。
❖ Dealer
テーブルと
download_cursor同期スクリプトを追加 するには、次の手順に従います。
1 統合データベースに接続します。
• Sybase Central で、[Adaptive Server Anywhere 9] プラグイ ンを右クリックし、[接続] を選択します。
[接続] ダイアログが表示されます。
• [ID] タブで、ユーザ ID として DBA、パスワードとして
SQL を入力します。[データベース] タブで、[サーバ名
] として cons と入力します。
• [OK] をクリックして接続します。
2 Interactive SQL を起動します。
• Sybase Central で、cons データベースを右クリックしま
す。[Interactive SQL を開く] を選択します。
3 Dealer テーブルと download_cursor 同期スクリプトをインス
トールします。
• Interactive SQL で次のコマンドを実行します。
/* the dealer table */
create table Dealer (
name varchar(10) not null primary key,
rating varchar(5),
last_modified timestamp default timestamp
) go
insert into Dealer(name, rating) values ( 'Audi', 'a');
insert into Dealer(name, rating) values (
insert into Dealer(name, rating) values ( 'Chrysler', 'c' );
insert into Dealer(name, rating) values ( 'Dodge', 'd');
insert into Dealer(name, rating) values ( 'Eagle', 'e');
insert into Dealer(name, rating) values ( 'Ford', 'f');
insert into Dealer(name, rating) values ( 'Geo', 'g');
insert into Dealer(name, rating) values ( 'Honda', 'h');
insert into Dealer(name, rating) values ( 'Isuzu', 'i');
go
/* the download_cursor synchronization script
*/
call ml_add_table_script( 'sis_ver1', 'Dealer', 'download_cursor',
'SELECT * FROM Dealer WHERE last_modified >=
?' ) go
Push 要求テーブルの作成
Notifier は、Push 要求を検出すると、リモート・データベースにメッ セージを送信します。通常の実装では、Push 要求テーブルを統合 データベースに追加します。
Push 要求の詳細については、「Push 要求」 11ページを参照してくださ
い。
❖ Push