Freigeben über


Zeilenstatusarray

Zusätzlich zu Daten kann SQLFetch und SQLFetchScroll ein Array zurückgeben, das den Status jeder Zeile im Rowset angibt. Dieses Array wird über das attribut SQL_ATTR_ROW_STATUS_PTR-Anweisung angegeben. Dieses Array wird von der Anwendung zugewiesen und muss so viele Elemente aufweisen, wie durch das attribut SQL_ATTR_ROW_ARRAY_SIZE-Anweisung angegeben werden. Die Werte im Array werden von SQLBulkOperations, SQLFetch, SQLFetchScroll und SQLSetPos festgelegt. Die Werte beschreiben den Status der Zeile und ob sich dieser Status seit dem letzten Abruf geändert hat.

Zeilenstatusarraywert Beschreibung
SQL_ROW_SUCCESS Die Zeile wurde erfolgreich abgerufen und hat sich seit dem letzten Abruf nicht geändert.
SQL_ROW_SUCCESS_WITH_INFO Die Zeile wurde erfolgreich abgerufen und hat sich seit dem letzten Abruf nicht geändert. Es wurde jedoch eine Warnung zu der Zeile zurückgegeben.
SQL_ROW_ERROR Fehler beim Abrufen der Zeile.
SQL_ROW_UPDATED Die Zeile wurde erfolgreich abgerufen und wurde seit dem letzten Abruf aktualisiert. Wenn die Zeile von SQLSetPos erneut abgerufen oder aktualisiert wird, wird der Status in den neuen Status geändert.

Einige Treiber können keine Änderungen an Daten erkennen und können daher diesen Wert nicht zurückgeben. Um zu ermitteln, ob ein Treiber Updates für zurückgerufene Zeilen erkennen kann, ruft eine Anwendung SQLGetInfo mit der Option SQL_ROW_UPDATES auf.
SQL_ROW_DELETED Die Zeile wurde seit dem letzten Abruf gelöscht.
SQL_ROW_ADDED Die Zeile wurde von SQLBulkOperations eingefügt. Wenn die Zeile erneut abgerufen oder von SQLSetPos aktualisiert wird, wird der Status SQL_ROW_SUCCESS.

Dieser Wert wird nicht von SQLFetch oder SQLFetchScroll festgelegt.
SQL_ROW_NOROW Das Rowset überlappt das Ende des Resultsets, und es wurde keine Zeile zurückgegeben, die diesem Element des Zeilenstatusarrays entspricht.