Durchscrollen und Abrufen von Zeilen (ODBC)

Bei Einsatz eines bildlauffähigen Cursors rufen Anwendungen SQLFetchScroll auf, um den Cursor zu positionieren und Zeilen abzurufen. SQLFetchScroll unterstützt relatives Scrollen (nächste, vorherige und relative n Zeilen), absolutes Scrollen (erste, letzte und Zeile n) und die Positionierung nach Textmarke. Die Argumente FetchOrientation und FetchOffset in SQLFetchScroll geben an, welches Rowset abgerufen werden soll, wie in den folgenden Diagrammen dargestellt.

Abrufen des nächsten, vorherigen, ersten und letzten Rowsets

Abrufen des nächsten, vorherigen, ersten und letzten Rowsets

Abrufen des absoluten, relativen und mit Textmarken versehenen Rowsets

Abrufen des absoluten, relativen und mit Textmarken versehenen Rowsets

SQLFetchScroll positioniert den Cursor in der angegebenen Zeile und gibt die Zeilen im Rowset ab der betreffenden Zeile zurück. Wenn das angegebene Rowset das Ende des Resultsets überlappt, wird ein partielles Rowset zurückgegeben. Wenn das angegebene Rowset den Anfang des Resultsets überlappt, wird in der Regel das erste Rowset im Resultset zurückgegeben. Ausführliche Informationen finden Sie in der Beschreibung der Funktion SQLFetchScroll.

In einigen Fällen möchte die Anwendung den Cursor möglicherweise positionieren, ohne Daten abzurufen. So kann sie z. B. testen, ob eine Zeile vorhanden ist, oder nur die Textmarke für die Zeile abrufen, ohne andere Daten über das Netzwerk zu übertragen. Dazu stellt sie das Attribut der Anweisung SQL_ATTR_RETRIEVE_DATA auf SQL_RD_OFF ein. Die Variable, die (ggf.) an die Textmarkenspalte gebunden ist, wird unabhängig von der Einstellung dieses Anweisungsattributs immer aktualisiert.

Nachdem das Rowset abgerufen wurde, kann die Anwendung SQLSetPos aufrufen, um den Cursor in einer bestimmten Zeile im Rowset zu positionieren oder Zeilen im Rowset zu aktualisieren. Weitere Informationen zur Verwendung von SQLSetPos finden Sie unter Aktualisieren von Daten mit SQLSetPos.

Hinweis

Scrollen wird in ODBC 2.x-Treibern von SQLExtendedFetch unterstützt. Weitere Informationen finden Sie unter Blockcursor, scrollfähige Cursor und Abwärtskompatibilität in Anhang G: Treiberrichtlinien für Abwärtskompatibilität.