重大度が18以下のユーザー定義エラーを簡単に発生させることができます。それより高い場合、このエラーが発生します
18より大きいエラー重大度レベルは、WITH LOGオプションを使用して、sysadminロールのメンバーのみが指定できます。
私はsysadminロールにアクセスできるので、WITH LOGオプションでエラーを発生させる構文を誰かが指定できます。ありがとう。
WITH
は、RAISERROR
の末尾にあるオプションの句です。いくつかの例:
RAISERROR('Oops', 10, 1)
RAISERROR('Oops', 10, 1) WITH NOWAIT
RAISERROR('Oops', 10, 1) WITH SETERROR
RAISERROR('Oops', 19, 1) -- Fails with "Error severity levels greater than 18..."
RAISERROR('Oops', 19, 1) WITH LOG -- OK
重大度が20以上の場合は接続が終了することに注意してください(CATCH
にジャンプすることすらありません)。
また、sp_addmessage sprocの使用中に@with_logパラメータを指定することもできます。
sp_addmessage 50001, 19, 'Test Message', @with_log='True'