エラー番号を使用して警告を作成する
適用対象 SQL Server
重要
現在、Azure SQL Managed Instance によって、すべてではありませんが、ほとんどの SQL Server エージェントの機能がサポートされています。 詳細については、Azure SQL Managed Instance と SQL Server での相違点に関するページを参照してください。
このトピックでは、SQL Server Management Studio または Transact-SQL を使用して、特定の番号のエラーが発生したときに SQL Server で発生する Microsoft SQL Server エージェント警告の作成方法について説明します。
はじめに
制限事項と制約事項
SQL Server Management Studio では、簡単かつグラフィカルに警告システム全体を管理でき、警告インフラストラクチャを構成するのにお勧めです。
xp_logevent で生成されたイベントは master データベースで発生します。 このため、 xp_logevent では、警告の @database_name が 'master' または NULL になっていないと、警告が起動されません。
セキュリティ
アクセス許可
既定では、 sp_add_alert を実行できるのは、 sysadmin固定サーバー ロールのメンバーだけです。
SQL Server Management Studio を使用する
エラー番号を使用して警告を作成するには
オブジェクト エクスプローラー で、プラス記号をクリックして、エラー番号を使用する警告を作成するサーバーを展開します。
プラス記号をクリックして [SQL Server エージェント]を展開します。
[警告] を右クリックし、 [新しい警告]をクリックします。
[新しい警告] ダイアログ ボックスで、 [名前] ボックスに新しい警告の名前を入力します。
[有効化] チェック ボックスをオンにして、実行する警告を有効にします。 既定では、 [有効化] チェック ボックスはオンになっています。
[種類] ボックスの一覧の [SQL Server イベント警告]をクリックします。
[イベント警告定義]で、 [データベース名] ボックスの一覧からデータベースを選択して、警告を特定のデータベースに限定します。
[警告が発生する条件]の [エラー番号]をクリックし、その警告の有効なエラー番号を入力します。 または、 [重大度] をクリックし、警告を発生させる重大度を選択します。
特定の文字列が含まれている場合のみ警告を生成するには、 [メッセージに次の内容が含まれている場合に警告する] チェック ボックスをオンにし、 [メッセージ テキスト]ボックスにキーワードまたは文字列を入力します。 最大文字数は 100 文字です。
[OK] をクリックします。
Transact-SQL の使用
エラー番号を使用して警告を作成するには
オブジェクト エクスプローラーで、 データベース エンジンのインスタンスに接続します。
[標準] ツール バーの [新しいクエリ] をクリックします。
次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] をクリックします。
-- adds an alert (Test Alert) that runs the Back up -- the AdventureWorks2022 Database job when fired -- assumes that the message 55001 and the Back up -- the AdventureWorks2022 Database job already exist. USE msdb ; GO EXEC dbo.sp_add_alert @name = N'Test Alert', @message_id = 55001, @severity = 0, @notification_message = N'Error 55001 has occurred. The DB will be backed up...', @job_name = N'Back up the AdventureWorks2022 Database' ; GO
詳細については、「 sp_add_alert (Transact-SQL)」を参照してください。