- 17、18 為警告
- 19 以上為非常嚴重
- 20 以上會導致資料庫連接關閉,且所有 Transaction 皆會 Rollback
- 17 以上的錯誤訊息會寫入 SQL Server 錯誤記錄檔和 Windows 應用程式事件記錄檔中
嚴重性 | 簡易說明 |
---|---|
0 - 9 | 資訊類訊息,不算錯誤 |
10 | 資訊類訊息以傳回狀態,或回報不嚴重的錯誤 |
11 - 16 | 使用者造成的錯誤 |
17 - 19 | 使用者無法修正的軟體錯誤 |
20 | 目前的處理發生嚴重錯誤 |
21 | 資料庫處理序發生嚴重錯誤 |
22 - 23 | 嚴重錯誤:資料表完整性受到質疑 |
24 | 嚴重錯誤:硬體錯誤 |
25 | 嚴重錯誤 |
SSMS => 物件總管 => SQL Server Agent => 警示 => 新增警示
新增警示 => 一般 => 輸入名稱(嚴重性 19)、選擇類型(SQL Server 事件警示)、選擇嚴重性
新增警示 =>回應 => 通知操作員,並勾選該操作員要用電子郵件通知
新增警示 => 選項 => 勾選電子郵件讓錯誤訊息文字也會包含進 EMail 中
以此類推來完成其他嚴重性警示
警示建立完成後,利用 RAISERROR 來觸發嚴重性 19 的錯誤
-- 建立使用者自訂的錯誤號碼並設定嚴重性為 19
sp_addmessage
@msgnum = 50001 ,
@severity = 19 ,
@msgtext = 'Demo is triggered' ,
@Lang = 'english' ,
@with_Log = true
GO
-- 觸發該錯誤
RAISERROR (50001,19,1) WITH LOG
GO
收到嚴重性 19 的通知 mail
感謝分享
回覆刪除