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 для перехода к следующему результату.