Freigeben über


RDA-Architektur

Beim Remotedatenzugriff (Remote Data Access, RDA) werden drei Komponenten von Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) verwendet: das SQL Server Compact Edition Database Engine (Datenbankmodul), der Client-Agent für SQL Server Compact Edition und der Server-Agent für SQL Server Compact Edition.

RDA verwendet die Microsoft Internetinformationsdienste (Internet Information Services, IIS) als Kommunikationsmittel zwischen der SQL Server-Datenbank auf einem Server und der SQL Server Compact Edition-Datenbank auf dem Gerät. Der Remotedatenzugriff wird von Database Engine (Datenbankmodul) von SQL Server Compact Edition, dem Client-Agent für SQL Server Compact Edition und dem Server-Agent für SQL Server Compact Edition zusammen abgeschlossen. Dieser Vorgang wird im folgenden Diagramm dargestellt.

Architektur für Remotedatenzugriff (RDA)

Datenbankmodul von SQL Server Compact Edition

Das SQL Server Compact Edition Database Engine (Datenbankmodul) verwaltet den auf dem Gerät gespeicherten SQL Server-Datenspeicher. Bei nachverfolgten Pull-Vorgängen protokolliert Database Engine (Datenbankmodul) alle Datenbankeinträge, die eingefügt, aktualisiert oder gelöscht werden, indem zusätzlich zu jedem Datensatz einige Informationen zur Änderungsprotokollierung gespeichert werden. Falls Indizes für die SQL Server-Daten vorhanden sind, unterstützt RDA zudem, dass Indizes für die lokalen Daten erstellt werden.

Client-Agent für SQL Server Compact Edition

Der Client-Agent für SQL Server Compact Edition, der sich auf dem Gerät befindet, ist die Komponente, die hauptsächlich für RDA verwendet wird. Der Client-Agent implementiert die RDA-Objektschnittstelle. Diese Schnittstelle wird von Anwendungen zur programmseitigen Steuerung von RDA aufgerufen.

In der folgenden Tabelle werden die Aktionen beschrieben, die der Client-Agent für SQL Server Compact Edition in Reaktion auf Methodenaufrufe von RDA-Objekten ausführt.

Methode Aktion

Pull

Leitet die Anforderung an den Server-Agent für SQL Server Compact Edition mithilfe von HTTP weiter. Wenn der Client-Agent für SQL Server Compact Edition das Recordset von SQL Server empfängt, speichert er es in der SQL Server Compact Edition-Datenbank.

Push

Extrahiert alle eingefügten, aktualisierten und gelöschten Datensätze aus der SQL Server Compact Edition-Datenbank und sendet sie mithilfe von HTTP an den Server-Agent für SQL Server Compact Edition.

SubmitSQL

Leitet die angegebene SQL-Anforderung an den Server-Agent für SQL Server Compact Edition mithilfe von HTTP weiter.

SQL Server Compact Edition Server-Agent

Der Server-Agent für SQL Server Compact Edition, der sich auf dem Computer mit IIS befindet, verarbeitet die HTTP-Anforderungen des Client-Agents für SQL Server Compact Edition. Er verwendet temporäre Nachrichtendateien (IN und OUT) für die Verwaltung des Datenaustauschs zwischen SQL Server und SQL Server Compact Edition.

In der folgenden Tabelle werden die Aktionen beschrieben, die der Server-Agent für SQL Server Compact Edition in Reaktion auf Methodenaufrufe von RDA-Objekten ausführt.

Methode Aktion

Pull

Empfängt die Anforderung vom Client-Agent für SQL Server Compact Edition, stellt eine Verbindung mit SQL Server über den OLE DB-Anbieter für SQL Server her und ruft die SQL-Anweisung des Clients auf. Der Server-Agent für SQL Server Compact Edition gibt das resultierende Recordset an den Client-Agent für SQL Server Compact Edition mithilfe von HTTP zurück.

Push

Empfängt alle eingefügten, aktualisierten und gelöschten Datensätze vom Client-Agent für SQL Server Compact Edition, stellt eine Verbindung über OLE DB mit SQL Server her und fügt die Datensätze in die SQL Server-Datenbank ein bzw. aktualisiert oder löscht sie. Falls Fehler auftreten, meldet der Server-Agent für SQL Server Compact Edition die Fehler mithilfe von HTTP an den Client-Agent für SQL Server Compact Edition.

SubmitSQL

Empfängt die angegebene SQL-Anforderung vom Client-Agent für SQL Server Compact Edition mithilfe von HTTP, stellt eine Verbindung über OLE DB mit SQL Server her und ruft die SQL-Anweisung des Clients auf. Falls Fehler auftreten, meldet der Server-Agent für SQL Server Compact Edition die Fehler mithilfe von HTTP an den Client-Agent für SQL Server Compact Edition.

Siehe auch

Hilfe und Information

Informationsquellen für SQL Server Compact Edition