SQLGetStmtAttr

Применимо к:SQL ServerAzure SQL DatabaseAzure Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)

Драйвер ODBC для собственного клиента SQL Server расширяет SQLGetStmtAttr для предоставления атрибутов инструкции для конкретного драйвера.

ФункцияSQLSetStmtAttr перечисляет атрибуты инструкции, которые можно как считывать, так и изменять. В данном разделе приводятся атрибуты инструкции только для чтения.

SQL_SOPT_SS_CURRENT_COMMAND

Атрибут SQL_SOPT_SS_CURRENT_COMMAND предоставляет текущую команду пакета команд. Возвращение является целым числом, указывающим расположение команды в пакете. Значение аргумента ValuePtr имеет тип SQLLEN.

SQL_SOPT_SS_NOCOUNT_STATUS

Атрибут SQL_SOPT_SS_NOCOUNT_STATUS указывает текущий параметр NOCOUNT, который определяет, сообщает ли SQL Server количество строк, затронутых инструкцией при вызове SQLRowCount . Значение аргумента ValuePtr имеет тип SQLLEN.

значение Description
SQL_NC_OFF Значение NOCOUNT — OFF. SQLRowCount возвращает количество затронутых строк.
SQL_NC_ON Значение NOCOUNT — ON. Число затронутых строк не возвращается SQLRowCount, а возвращаемое значение равно 0.

Если SQLRowCount возвращает значение 0, приложение должно протестировать SQL_SOPT_SS_NOCOUNT_STATUS. Если возвращается SQL_NC_ON, значение 0 из SQLRowCount указывает, что SQL Server не вернул число строк. Если возвращается SQL_NC_OFF, это означает, что NOCOUNT отключен и значение 0 из SQLRowCount указывает, что инструкция не повлияла на строки.

Приложения не должны отображать значение SQLRowCount, если SQL_SOPT_SS_NOCOUNT_STATUS SQL_NC_OFF. Большие пакеты или хранимые процедуры могут содержать несколько инструкций SET NOCOUNT, следовательно, нельзя предположить, что SQL_SOPT_SS_NOCOUNT_STATUS остается неизменным. Этот параметр следует тестировать каждый раз, когда SQLRowCount возвращает значение 0.

Атрибут SQL_SOPT_SS_QUERYNOTIFICATION_MSGTEXT

Атрибут SQL_SOPT_SS_QUERYNOTIFICATION_MSGTEXT возвращает текст сообщения в ответ на запрошенное уведомление о запросе.

SQLGetStmtAttr и возвращающие табличное значение параметры

SQLGetStmtAttr можно вызвать, чтобы получить значение SQL_SOPT_SS_PARAM_FOCUS в дескрипторе параметра приложения (APD) при работе с табличными параметрами. Дополнительные сведения о SQL_SOPT_SS_PARAM_FOCUS см. в разделе SQLSetStmtAttr.

Дополнительные сведения о табличном значении параметров см. в разделе "Параметры с табличным значением" (ODBC).

См. также

Функция SQLSetStmtAttr
Подробные сведения о реализации API-интерфейсов ODBC