SQLRowCount

适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics 平台系统(PDW)

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

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

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

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

另请参阅

SQLRowCount 函数
ODBC API 实现细节