Freigeben über


Verwenden von Servercursorn

Wenn eine ODBC-Anwendung ein ODBC-Cursorattribut auf einen anderen als den Standardwert festlegt, fordert der SQL Server Native Client-ODBC-Treiber den Server auf, einen API-Servercursor desselben Typs zu implementieren. Durch die Verwendung von API-Servercursorn wird auf dem Client Arbeitsspeicher freigegeben, und zudem kann der Netzwerkdatenverkehr zwischen dem Client und dem Server erheblich reduziert werden.

Ein potenzieller Nachteil von API-Servercursorn liegt darin, dass sie zurzeit nicht alle SQL-Anweisungen unterstützen. API-Servercursor können nicht verwendet werden, um Folgendes auszuführen:

  • Batches oder gespeicherte Prozeduren, die mehrere Resultsets zurückgeben

  • SELECT-Anweisungen, die die Klauseln COMPUTE, COMPUTE BY, FOR BROWSE oder INTO enthalten

  • Eine EXECUTE-Anweisung, die auf eine remote gespeicherte Prozedur verweist

Wenn eine Verbindung zu einer Instanz von SQL Server besteht, führt die Ausführung einer Anweisung mit diesen Merkmalen mithilfe eines Servercursors dazu, dass der Cursor in ein Standardresultset konvertiert wird. Wenn eine Verbindung zu früheren Versionen von SQL Server hergestellt ist, verursacht sie einen Fehler.

Siehe auch

Konzepte

Implementieren von Cursorn