Freigeben über


SQLRowCount

Wenn Arrays von Parameterwerten für die Anweisungsausführung gebunden sind, gibt SQL_ERROR zurück, SQLRowCount wenn eine Zeile von Parameterwerten eine Fehlerbedingung bei der Anweisungsausführung generiert. Kein Wert wird durch das RowCountPtr -Argument der Funktion zurückgegeben.

Die Anwendung nutzt das SQL_ATTR_PARAMS_PROCESSED_PTR-Anweisungsattribut, um die Anzahl der vor Auftreten des Fehlers verarbeiteten Parameter zu erfassen.

Darüber hinaus kann die Anwendung ein Array von Statuswerten verwenden, die mithilfe des SQL_ATTR_PARAM_STATUS_PTR-Anweisungsattributs gebunden sind, um die Arrayoffsets der ungültigen Parameterzeilen zu erfassen. Die Anwendung kann das Statusarray durchsuchen, um die tatsächliche Anzahl verarbeiteter Zeilen zu bestimmen.

Wenn eine Transact-SQL INSERT-, UPDATE-, DELETE- oder MERGE-Anweisung mit einer OUTPUT-Klausel ausgeführt wird, gibt SQLRowCount die Anzahl der betroffenen Zeilen erst zurück, wenn alle von der OUTPUT-Klausel generierten Zeilen im Resultset verbraucht wurden. Um diese Zeilen zu sconsumieren, rufen Sie SQLFetch oder SQLFetchScroll auf. SQLResultCols gibt -1 zurück, bis alle Ergebniszeilen verbraucht wurden. Nachdem SQLFetch oder SQLFetchScroll SQL_NO_DATA zurückgegeben hat, muss die Anwendung SQLRowCount aufrufen, um die Anzahl der betroffenen Zeilen zu bestimmen, bevor SQLMoreResults aufgerufen wird, um zum nächsten Ergebnis zu wechseln.

Weitere Informationen

SQLRowCount-Funktion
ODBC API Implementation Details