srv_message_handler (擴充預存程序 API)
重要事項 |
---|
未來的 Microsoft SQL Server 版本將移除這項功能。請勿在新的開發工作中使用此功能,並且儘速修改使用此功能的應用程式。所以請改用 CLR 整合。 |
呼叫安裝的擴充預存程序 API 訊息處理常式。此函數通常用來從擴充預存程序呼叫 MicrosoftSQL 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 Agent 會針對這些警示條件進行監視。
如果錯誤訊息較長,就會截斷為 412 個位元組。
安全性注意事項 |
---|
您應該徹底檢閱擴充預存程序的原始程式碼,您也應該先測試編譯過的 DLL,才能將它們安裝在實際執行伺服器上。如需有關安全性檢閱和測試的資訊,請參閱此 Microsoft 網站。 |