Share via


Bildläufe und Abrufen von Zeilen

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Um einen bildlauffähigen Cursor zu verwenden, muss eine ODBC-Anwendung folgende Bedingungen erfüllen:

  • Legen Sie die Cursorfunktionen mithilfe von SQLSetStmtAttr fest.

  • Öffnen Sie den Cursor mithilfe von SQLExecute oder SQLExecDirect.

  • Scrollen und Abrufen von Zeilen mithilfe von SQLFetch oder SQLFetchScroll.

Sowohl SQLFetch als auch SQLFetchSroll können Zeilenblöcke gleichzeitig abrufen. Die Anzahl der zurückgegebenen Zeilen wird mithilfe von SQLSetStmtAttr angegeben, um den parameter SQL_ATTR_ROW_ARRAY_SIZE festzulegen.

ODBC-Anwendungen können SQLFetch verwenden, um einen Vorwärtscursor abzurufen.

SQLFetchScroll wird verwendet, um einen Cursor zu scrollen. SQLFetchScroll unterstützt das Abrufen des nächsten, vorherigen, ersten und letzten Rowsets zusätzlich zum relativen Abrufen (Abrufen des Rowsets n Zeilen vom Anfang des aktuellen Rowsets) und dem absoluten Abrufen (Abrufen des Rowsets ab Zeile n). Wenn n in einem absoluten Abruf negativ ist, werden Zeilen vom Ende des Resultsets gezählt. Ein absoluter Abruf von Zeile -1 bedeutet den Abruf des Rowsets, das mit der letzten Zeile im Resultset beginnt.

Anwendungen, die SQLFetchScroll nur für ihre Blockcursorfunktionen verwenden, z. B. Berichte, durchlaufen das Resultset wahrscheinlich ein einziges Mal, wobei nur die Option zum Abrufen des nächsten Rowsets verwendet wird. Bildschirmbasierte Anwendungen hingegen können alle Funktionen von SQLFetchScroll nutzen. Wenn die Anwendung die Rowsetgröße auf die Anzahl der auf dem Bildschirm angezeigten Zeilen festlegt und die Bildschirmpuffer an das Resultset bindet, kann sie Scrollleistenvorgänge direkt in Aufrufe von SQLFetchScroll übersetzen.

Bildlaufleistenvorgang SQLFetchScroll-Bildlaufoption
Bild auf SQL_FETCH_PRIOR
Bild ab SQL_FETCH_NEXT
Zeile auf SQL_FETCH_RELATIVE mit FetchOffset gleich -1
Zeile ab SQL_FETCH_RELATIVE mit FetchOffset gleich 1
Bildlauffeld nach oben SQL_FETCH_FIRST
Bildlauffeld nach unten SQL_FETCH_LAST
Zufällige Bildlauffeldposition SQL_FETCH_ABSOLUTE

In diesem Abschnitt

Weitere Informationen

Verwenden von Cursorn (ODBC)