OLE DB-Befehle (SQL Server Compact)

In OLE DB wird ein Befehlsobjekt verwendet, um anbieterspezifische Textbefehle auszuführen. Diese Befehle ähneln SQL-Anweisungen.

Verwenden von Befehlen

Die grundlegenden Schritte für das Verwenden von Befehlen in OLE DB sind Folgende:

  1. Mit IDBCreateCommand::CreateCommand wird ein Command-Objekt aus einem vorhandenen Session-Objekt erstellt.
  2. Mit ICommandText wird der Befehlstext für die Abfrage angegeben.
    Die Befehlssyntax, die der OLE DB-Anbieter für Microsoft SQL Server Compact 3.5 (SQL Server Compact 3.5) unterstützt, wird als DBGUID_SQL angegeben. Die DBGUID_SQL-Syntax ist in erster Linie SQL-92-Syntax mit ODBC-Escapesequenzen.
  3. Der Befehl wird mit ICommand::Execute ausgeführt.

SQL Server Compact 3.5 unterstützt eine Teilmenge der SQL Server Transact-SQL-Abfragegrammatik. Abfragen, die in SQL Server Compact 3.5 ausgeführt werden können, können auch in SQL Server ausgeführt werden. Allerdings sind viele der Transact-SQL-Features in SQL Server Compact 3.5 nicht vorhanden, und in einem Befehl kann immer nur eine SQL-Anweisung ausgeführt werden.

SQL Server Compact 3.5 unterstützt parametrisierte Abfragen, in denen Parameter durch Fragezeichen (?) getrennt sind. Es unterstützt auch benannte parametrisierte Abfragen.

Weitere Informationen zur von SQL Server Compact 3.5 unterstützten Abfragegrammatik finden Sie unter SQL-Referenz (SQL Server Compact).

Vorbereiten von Befehlen

Damit eine Abfrage ausgeführt werden kann, muss Datenbankmodul die SQL-Anweisung zunächst analysieren, kompilieren und optimieren. Häufig können diese Schritte in einem Mal abgeschlossen werden, wenn der Befehl mehrere Male ausgeführt werden soll. Dadurch lässt sich möglicherweise Zeit sparen. Ist zu erwarten, dass Clients eine Abfrage mehrere Male ausführen, empfiehlt es sich, dass der Befehl einmal vorbereitet wird. Anschließend wird Execute mehrere Male aufgerufen. Dadurch lässt sich die Leistung optimieren, indem erneute Abfragekompilierungen vermieden werden. Befehle können, bevor sie ausgeführt werden, durch Aufrufen von ICommandPrepare::Prepare vorbereitet werden. Dies ist gleichbedeutend mit dem Kompilieren des Befehls.

Beispiele

Ein Beispiel für das Erstellen und Ausführen von Befehlen mithilfe des OLE DB-Anbieters für SQL Server Compact 3.5 finden Sie im Beispiel unter OLE DB-Parameter (SQL Server Compact).