次の方法で共有


リモート データ アクセス (RDA) のアーキテクチャ

リモート データ アクセス (RDA) では、Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) の 3 つのコンポーネント (SQL Server Compact Edition データベース エンジン、SQL Server Compact Edition クライアント エージェント、および SQL Server Compact Edition サーバー エージェント) を使用します。

RDA では、サーバー上の SQL Server データベースとデバイス上の SQL Server Compact Edition データベース間の通信メカニズムとして、Microsoft インターネット インフォメーション サービス (IIS) を使用します。次の図に示すように、SQL Server Compact Edition データベース エンジン、SQL Server Compact Edition クライアント エージェント、および SQL Server Compact Edition サーバー エージェントが連動して RDA を実現します。

リモート データ アクセス (RDA) のアーキテクチャ

SQL Server Compact Edition データベース エンジン

SQL Server Compact Edition データベース エンジン では、デバイス上の SQL Server データ ストアを管理します。監視設定付きでプルした場合、データベース エンジン では各レコードで少量の変更監視用情報を保持することにより、挿入、更新、または削除されるすべてのレコードを監視します。SQL Server のデータにインデックスが存在する場合、RDA ではローカル データへのインデックス作成もサポートされます。

SQL Server Compact Edition クライアント エージェント

デバイス上の SQL Server Compact Edition クライアント エージェントは、RDA に使用する主要なコンポーネントです。クライアント エージェントは、RDA オブジェクト インターフェイスを実装します。アプリケーションではこのインターフェイスを呼び出し、PDA をプログラムを使用して制御します。

次の表で、SQL Server Compact Edition クライアント エージェントが RDA オブジェクトのメソッドの呼び出しに応じて行う操作を説明します。

メソッド 操作

Pull

HTTP 経由で SQL Server Compact Edition サーバー エージェントに要求を転送します。SQL Server Compact Edition クライアント エージェントは SQL Server からレコードセットを受け取り、SQL Server Compact Edition データベースにレコードセットを格納します。

Push

SQL Server Compact Edition データベースから挿入、更新、および削除されたすべてのレコードを取り出し、HTTP 経由で SQL Server Compact Edition サーバー エージェントに送信します。

SubmitSQL

指定された SQL 要求を、HTTP 経由で SQL Server Compact Edition サーバー エージェントに転送します。

SQL Server Compact Edition サーバー エージェント

SQL Server Compact Edition サーバー エージェントは IIS を実行するコンピュータ上に置かれ、SQL Server Compact Edition クライアント エージェントによって行われる HTTP 要求を処理します。このサーバー エージェントは、SQL Server と SQL Server Compact Edition 間のデータ交換を管理する際に、一時的なメッセージ ファイル (*.in と *.out) を使用します。

次の表で、SQL Server Compact Edition サーバー エージェントが RDA オブジェクトのメソッドの呼び出しに応じて行う操作を説明します。

メソッド 操作

Pull

SQL Server Compact Edition クライアント エージェントから要求を受け取り、OLE DB Provider for SQL Server を使用して SQL Server に接続し、クライアントの SQL ステートメントを呼び出します。SQL Server Compact Edition サーバー エージェントは SQL Server Compact Edition クライアント エージェントに HTTP 経由で結果のレコードセットを返します。

Push

挿入、更新、および削除されたすべてのレコードを SQL Server Compact Edition クライアント エージェントから受け取り、OLE DB を使用して SQL Server に接続し、SQL Server データベースのレコードを挿入、更新、または削除します。エラーが発生した場合、SQL Server Compact Edition サーバー エージェントは SQL Server Compact Edition クライアント エージェントに HTTP 経由でエラーを報告します。

SubmitSQL

指定された SQL 要求を、HTTP 経由で SQL Server Compact Edition クライアント エージェントから受け取り、OLE DB を使用して SQL Server に接続し、クライアントの SQL ステートメントを呼び出します。エラーが発生した場合、SQL Server Compact Edition サーバー エージェントは SQL Server Compact Edition クライアント エージェントに HTTP 経由でエラーを報告します。

参照

ヘルプおよび情報

SQL Server Compact Edition のサポートについて