SQLRowCount
Если для выполнения инструкции привязаны массивы значений параметров, то функция SQLRowCount возвращает значение SQL_ERROR, если любое из значений параметров создаст ошибочное условие при выполнении инструкции. Через аргумент RowCountPtr функции значение возвращено не будет.
Приложение может воспользоваться атрибутом инструкции SQL_ATTR_PARAMS_PROCESSED_PTR для получения количества параметров, обработанных до возникновения ошибки.
Кроме этого, приложение может использовать массив значений состояния, привязанный с помощью атрибута инструкции SQL_ATTR_PARAM_STATUS_PTR, для получения массива смещений вызвавших ошибку строк параметров. Чтобы выяснить действительное число обработанных строк, приложение может просмотреть этот массив.
При выполнении инструкции Transact-SQL INSERT, UPDATE, DELETE или MERGE с предложением OUTPUT функция SQLRowCount не возвращает число обработанных строк до тех пор, пока не будут обработаны все строки в результирующем наборе, сформированном предложением OUTPUT. Доступ к этим строкам осуществляется вызовом функции SQLFetch или SQLFetchScroll. Функция SQLResultCols возвращает значение -1 до тех пор, пока не будут обработаны все результирующие строки. После того как функция SQLFetch или SQLFetchScroll вернула значение SQL_NO_DATA, приложение должно вызвать функцию SQLRowCount, чтобы определить число обработанных строк, а затем — функцию SQLMoreResults, чтобы перейти к следующему результату.
См. также
Основные понятия
Подробности реализации API-интерфейса ODBC