Поделиться через


srv_message_handler (API-интерфейс расширенных хранимых процедур)

Применимо к:SQL Server

Внимание

Эта функция будет удалена в будущей версии SQL Server. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется. Пользуйтесь вместо этого интеграцией со средой CLR.

Вызывает установленный обработчик сообщений API-интерфейса расширенных хранимых процедур. Эта функция обычно используется для вызова Microsoft SQL Server из расширенной хранимой процедуры для регистрации ошибки (определенной расширенной хранимой процедурой) в файле журнала ошибок SQL Server или журнале приложений Microsoft Windows.

Синтаксис

  
int srv_message_handler (  
SRV_PROC *  
srvproc  
,  
int  
errornum  
,  
BYTE   
severity  
,  
BYTE  
state  
,  
int  
oserrnum  
,  
char *  
errtext  
,  
int  
errtextlen  
,  
char *  
oserrtext  
,  
int  
oserrtextlen  
);  

Аргументы

srvproc
Указатель на структуру SRV_PROC, который представляет собой дескриптор соединения с клиентом. Параметр srvproc содержит сведения, которые используются для управления связью и передачей данных между приложением и клиентом.

errornum
Номер ошибки, определенный расширенной хранимой процедурой. Это значение должно быть от 50 001 до 2 147 483 647.

severity
Является стандартным значением серьезности SQL Server для ошибки. Это значение должно быть от 0 до 24.

state
Значение состояния SQL Server для ошибки.

oserrnum
Номер ошибки операционной системы. Этот аргумент не учитывается.

errtext
Описание ошибки errornum расширенной хранимой процедуры.

errtextlen
Длина строки ошибки errtext расширенной хранимой процедуры.

oserrtext
Описание ошибки операционной системы oserrnum. Этот аргумент не учитывается.

oserrtextlen
Длина строки ошибки операционной системы oserrtext.

Возвраты

SUCCEED или FAIL.

Замечания

Функция srv_message_handler позволяет расширенной хранимой процедуре интегрироваться с централизованным ведением журнала ошибок и функциями отчетов SQL Server. Оповещения SQL Server можно установить для событий из расширенных хранимых процедур, и агент SQL Server будут отслеживаться для этих условий генерации оповещений.

Если сообщение об ошибке длиннее, оно усекается до 412 байт.

Внимание

Необходимо тщательно просмотреть исходный код расширенных хранимых процедур и проверить скомпилированные библиотеки DLL перед их установкой на рабочий сервер. Сведения о проверке безопасности см. на следующем веб-сайте Майкрософт.