Freigeben über


Verwenden von Servercursorn

Gilt für: SQL Server Azure SQL-Datenbank Azure SQL verwaltete Instanz Azure Synapse Analytics Analytics Platform System (PDW)

Wenn eine ODBC-Anwendung eines der ODBC-Cursorattribute auf einen anderen Wert als die Standardwerte festlegt, fordert der SQL Server Native Client ODBC-Treiber den Server an, 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 mit einer Instanz von SQL Server hergestellt wird, bewirkt das Ausführen einer Anweisung mit diesen Merkmalen mithilfe eines Servercursors, dass der Cursor in einen Standardergebnissatz konvertiert wird. Wenn eine Verbindung mit früheren Versionen von SQL Server hergestellt wird, tritt ein Fehler auf.

Weitere Informationen

Implementieren von Cursorn