プログラムが正しく動作することをテストしたら、データを ULProduct テーブルに手動で挿入す るコードを、リモート・データベースと統合データベースとを同期するコードに置き換えます。
同期することにより、テーブルにデータが挿入され、アプリケーションはそのデータを操作でき ます。
TCP/IP を介する同期
TCP/IP のソケット接続などを使用して、リモート・データベースを統合データベースと同期で
きます。まずULEnableTcpipSynchronization (
または同様のULEnableXXX
関数)
を呼び出し、そ の後にULSynchronize
の呼び出しを発行します。同期の種類の詳細については、「Ultra Light
の同 期パラメータ」 『Mobile Link - クライアント管理』を参照してください。CustDB 統合データベースと同期するには、アプリケーションは従業員 ID フィールドの値を指定
する必要があります。このID
は、Mobile Link
サーバに対する、アプリケーションのインスタン スを識別します。50、51、52、53 の中から値を 1 つ選択できます。選択した値は、Mobile Link サーバによって、ダウンロード内容の決定、同期ステータスの記録、同期中の任意の割り込みか らのリカバリに使用されます。「ULSynchronize 関数」 340 ページを参照してください。
同期機能を使用してチュートリアル・アプリケーションを実行する
sample.sqc
を変更したら、esql.exe
を再構築します。♦ アプリケーションを同期するには、次の手順に従います。
1. Embedded SQL
コマンドINSERT
を削除し、次のコードを追加します。ULEnableTcpipSynchronization( &sqlca );
auto ul_synch_info synch_info;
ULInitSynchInfo( &synch_info );
synch_info.user_name = UL_TEXT("50");
synch_info.version = UL_TEXT("custdb 10.0");
ULSynchronize( &sqlca, &synch_info );
2. sample.sqc の前処理を実行します。
[ビルド] − [コンパイル sample.sqc] を選択して、変更したファイルを再コンパイルします。
メッセージが表示されたら、
sample.cpp
の再ロードを選択します。3.
実行プログラムをビルドします。[ビルド] − [ビルド esql.exe] を選択して、実行プログラムをビルドします。
4. SQL Anywhere
データべース・サーバが実行中であることを確認します。レッスン 5 :アプリケーションへの同期の追加
コマンド・プロンプトで、以下のコマンドを単一行で入力しても Mobile Link 同期サーバを 起動できます。
mlsrv10 –c "DSN=SQL Anywhere 10 CustDB" –o ulsync.mls –v+ –x tcpip
6.
アプリケーションを実行します。♦
[
ビルド] − [
実行esql.exe]
を選択して、アプリケーションを実行します。リモート・データベースは統合データベースと同期され、リモート・データベースのテー ブルにデータが挿入されます。アプリケーションのクエリが処理され、クエリの結果の ローが画面に表示されます。
140 Copyright © 2007, iAnywhere Solutions, Inc.
第 10 章
チュートリアル:ODBC を使用したアプリケー ションの構築
目次
Ultra Light ODBC の概要 ... 142
レッスン 1 :はじめに ... 143 レッスン 2:Ultra Light データベースの作成 ... 145 レッスン 3 :データベースへの接続 ... 146 レッスン 4 :データベースへのデータの挿入 ... 148 レッスン 5 :データベースのクエリ ... 149Ultra Light ODBC の概要
「ODBC」は、標準のデータベース・プログラミング・インタフェースです。Ultra Light では、
ODBC
インタフェースのサブセットと、同期を行うための拡張機能をサポートしています。Ultra
Light でサポートされている関数のリストについては、
「Ultra Light ODBC API リファレンス」 341 ページを参照してください。
この項では、簡単な