次の方法で共有


リモート データ アクセスの動作

リモート データ アクセス (RDA) を使用すると、アプリケーションでリモートの MicrosoftSQL Server 2005 データベースまたは SQL Server 2008 データベース、または SQL Server 2008 R2 データベースに格納されているデータに簡単にアクセスできます。データの反映は、まずはクライアントで開始されます。テーブルのデータは、サーバーからクライアントにプルされます。その後、クライアントで行われた変更を、クライアントからサーバーにプッシュできます。サーバーからの新しい変更を適用してクライアントを更新するには、テーブルを削除してサーバーから再度プルする必要があります。

用語

定義

プル

SQL Server データベースからデータを抽出し、そのデータを SQL Server Compact 3.5 データベースに格納します。

プッシュ

SQL Server Compact 3.5 データベース テーブルからの変更を既存の SQL Server データベースに送信します。

アプリケーションでは、行セットを返す SQL クエリを指定できます。返された行セットは、デバイスに転送され、そのテーブルに格納されます。アプリケーションによって加えれたすべての変更は、任意で監視されます。更新された行は、アプリケーションから要求があったときにサーバーに送信され、SQL Server データベースに適用されます。返された行セットは、行方向および列方向の両方でフィルタ選択できますが、フィルタの定義はデバイスからの SQL クエリで指定されます。

RDA は、サーバーで構成する必要はありません。したがって、サーバー データベースのスキーマには干渉しません。RDA は、ビジネス要件によりサーバーのデータ スキーマを変更できない場合に適した手段です。デバイスで実行中のアプリケーションを使用して、クライアントを RDA 向けに個別に構成する必要があります。そのため、多数のクライアントに関係しないアプリケーション、またはアプリケーションの接続されたデータを管理するために多数のクライアント コードを必要としないアプリケーションには、この接続手段が最適です。

RDA では、エラーが原因でサーバーに適用されない行を処理する競合回避モジュールは、サポートされていません。デバイス上のアプリケーションには、エラーを処理するコードを含めておく必要があります。エラーは必要に応じて、デバイス上にある SQL Server Compact 3.5 データベースのエラー テーブルに記録できます。また、RDA では、2 人の異なるユーザーによってデータが変更された場合などの、一般的な競合は検出されません。競合には、最後の更新が適用されます。したがって、ユーザーが同じデータを更新することのない、完全に分割されたアプリケーションで RDA を使用する必要があります。