SQLRowCount

当绑定参数值的数组以便执行语句时,如果参数值的任何行在语句执行中生成错误条件, SQLRowCount 则 返回 SQL_ERROR。 不通过函数的 RowCountPtr 参数返回任何值。

应用程序可以利用 SQL_ATTR_PARAMS_PROCESSED_PTR 语句属性捕获在错误发生之前已处理的参数个数。

此外,应用程序还可以使用由状态值构成的数组(通过使用 SQL_ATTR_PARAM_STATUS_PTR 语句属性进行绑定),来捕获生成错误的参数行的数组偏移量。 应用程序可以遍历状态数组以确定已处理的实际行数。

执行带有 OUTPUT 子句的 Transact-SQL INSERT、UPDATE、DELETE 或 MERGE 语句时,SQLRowCount 不会返回受影响的行计数,直到使用 OUTPUT 子句生成的结果集中的所有行。 若要计算这些行,请调用 SQLFetch 或 SQLFetchScroll。 SQLResultCols 将返回 -1,直到所有结果行都已使用。 在 SQLFetch 或 SQLFetchScroll 返回SQL_NO_DATA后,应用程序必须调用 SQLRowCount 以确定受影响的行数,然后再调用 SQLMoreResults 以移动到下一个结果。

另请参阅

SQLRowCount Function(SQLRowCount 函数)
ODBC API 实现细节