Freigeben über


SQLRowCount

Sind Arrays für Parameterwerte für Anweisungsausführungen gebunden, gibt SQLRowCount den Wert SQL_ERROR zurück, wenn eine Zeile mit 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.

Beim Ausführen einer INSERT-, UPDATE-, DELETE- oder MERGE-Anweisung mit einer OUTPUT-Klausel in Transact-SQL gibt SQLRowCount erst dann die Anzahl der betroffenen Zeilen zurück, wenn alle Zeilen in dem von der OUTPUT-Klausel erstellten Resultset verwendet wurden. Rufen Sie SQLFetch oder SQLFetchScroll auf, um diese Zeilen zu verwenden. SQLResultCols gibt -1 zurück, bis alle Ergebniszeilen verwendet wurden. Nachdem SQLFetch oder SQLFetchScroll SQL_NO_DATA zurückgibt, muss die Anwendung SQLRowCount aufrufen, um die Anzahl der betroffenen Zeilen anzuzeigen, bevor sie durch Aufrufen von SQLMoreResults zum nächsten Ergebnis wechselt.

Siehe auch

Konzepte

Andere Ressourcen