sp_update_alert (Transact-SQL)

既存の警告の設定を更新します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

sp_update_alert 
     [ @name =] 'name' 
     [ , [ @new_name =] 'new_name'] 
     [ , [ @enabled =] enabled] 
     [ , [ @message_id =] message_id] 
     [ , [ @severity =] severity] 
     [ , [ @delay_between_responses =] delay_between_responses] 
     [ , [ @notification_message =] 'notification_message'] 
     [ , [ @include_event_description_in =] include_event_description_in] 
     [ , [ @database_name =] 'database'] 
     [ , [ @event_description_keyword =] 'event_description_keyword'] 
     [ , [ @job_id =] job_id | [@job_name =] 'job_name'] 
     [ , [ @occurrence_count = ] occurrence_count] 
     [ , [ @count_reset_date =] count_reset_date] 
     [ , [ @count_reset_time =] count_reset_time] 
     [ , [ @last_occurrence_date =] last_occurrence_date] 
     [ , [ @last_occurrence_time =] last_occurrence_time] 
     [ , [ @last_response_date =] last_response_date] 
     [ , [ @last_response_time =] last_response _time]
     [ , [ @raise_snmp_trap =] raise_snmp_trap]
     [ , [ @performance_condition =] 'performance_condition' ] 
     [ , [ @category_name =] 'category']
     [ , [ @wmi_namespace = ] 'wmi_namespace' ]
     [ , [ @wmi_query = ] 'wmi_query' ]

引数

  • [ [ @name =] 'name'
    更新する警告の名前を指定します。name のデータ型は sysname で、既定値はありません。

  • [ [ @new_name =] 'new_name'
    警告の新しい名前を指定します。一意な名前を指定してください。new_name のデータ型は sysname で、既定値は NULL です。

  • [ [ @enabled =] enabled
    警告を有効 (1) にするか、無効 (0) にするかを指定します。enabled のデータ型は tinyint で、既定値は NULL です。警告を発するには、警告を有効にする必要があります。

  • [ [ @message_id =] message_id
    警告定義のための新しいメッセージまたはエラー番号を指定します。通常、message_id は sysmessages テーブルのエラー番号に対応します。message_id のデータ型は int で、既定値は NULL です。メッセージ ID は、警告の重大度レベルの設定が 0 の場合のみ使用できます。

  • [ [ @severity =] severity
    警告定義の新しい重大度レベル (125) を指定します。Windows アプリケーション ログに、指定した重大度の Microsoft SQL Server メッセージが送信されると、警告がアクティブになります。severity のデータ型は int で、既定値は NULL です。重大度レベルは、警告のメッセージ ID の設定が 0 の場合のみ使用できます。

  • [ [ @delay_between_responses =] delay_between_responses
    警告に対する 1 つの応答から次の応答までの、新しい待機時間を秒単位で指定します。delay_between_responses のデータ型は int で、既定値は NULL です。

  • [ [ @notification_message =] 'notification_message'
    電子メール、net send、またはポケットベル通知でオペレータに送信される追加メッセージの新しいテキストを指定します。notification_message のデータ型は nvarchar(512) で、既定値は NULL です。

  • [ [ @include_event_description_in =] include_event_description_in
    Windows アプリケーション ログに基づく SQL Server エラーの説明を、通知メッセージに含めるかどうかを指定します。include_event_description_in のデータ型は tinyint で、既定値は NULL です。次の値を 1 つ以上指定できます。

    説明

    0

    なし

    1

    電子メール

    2

    ポケットベル

    4

    net send

    7

    すべて

  • [ [ @database_name =] 'database'
    警告に関連するデータベースの名前を指定します。警告を発するには、このデータベースでエラーが発生する必要があります。database のデータ型は sysname です。角かっこ ([ ]) で囲まれた名前は使用できません。既定値は NULL です。

  • [ [ @event_description_keyword =] 'event_description_keyword'
    エラー メッセージ ログ内でエラーの説明を検索する場合に使用する文字シーケンスを指定します。Transact-SQL LIKE 式のパターン検索文字を使用できます。event_description_keyword のデータ型は nvarchar(100) で、既定値は NULL です。このパラメータは、オブジェクト名をフィルタ選択する場合に便利です (例、%customer_table%)。

  • [ [ @job_id =] job_id
    ジョブの識別番号を指定します。job_id のデータ型は uniqueidentifier で、既定値は NULL です。job_id を指定した場合は、job_name を省略する必要があります。

  • [ [ @job_name =] 'job_name'
    この警告への応答として実行するジョブの名前を指定します。job_name のデータ型は sysname で、既定値は NULL です。job_name を指定した場合は、job_id を省略する必要があります。

  • [ [ @occurrence_count = ] occurrence_count
    警告が発生した回数をリセットします。occurrence_count のデータ型は int で、既定値は NULL です。0 のみを指定できます。

  • [ [ @count_reset_date =] count_reset_date
    発生回数を最後にリセットした日付をリセットします。count_reset_date のデータ型は int で、既定値は NULL です。

  • [ [ @count_reset_time =] count_reset_time
    発生回数を最後にリセットした時刻をリセットします。count_reset_time のデータ型は int で、既定値は NULL です。

  • [ [ @last_occurrence_date =] last_occurrence_date
    警告が最後に発生した日付をリセットします。last_occurrence_date のデータ型は int で、既定値は NULL です。0 のみを指定できます。

  • [ [ @last_occurrence_time =] last_occurrence_time
    警告が最後に発生した時刻をリセットします。last_occurrence_time のデータ型は int で、既定値は NULL です。0 のみを指定できます。

  • [ [ @last_response_date =] last_response_date
    SQLServerAgent サービスが最後に警告に応答した日付をリセットします。last_response_date のデータ型は int で、既定値は NULL です。0 のみを指定できます。

  • [ [ @last_response_time =] last_response_time
    SQLServerAgent サービスが最後に警告に応答した時刻をリセットします。last_response_time のデータ型は int で、既定値は NULL です。0 のみを指定できます。

  • [ [ @raise_snmp_trap =] raise_snmp_trap
    予約済み。

  • [ [ @performance_condition =] 'performance_condition'
    'itemcomparatorvalue' の形式で表す値を指定します。performance_condition のデータ型は nvarchar(512) で、既定値は NULL です。次の要素で構成されます。

    形式の要素

    説明

    Item

    パフォーマンス オブジェクト、パフォーマンス カウンタ、またはカウンタの名前付きインスタンス。

    Comparator

    演算子 ><= のいずれか。

    Value

    カウンタの数値。

  • [ [ @category_name =] 'category'
    警告カテゴリの名前を指定します。category のデータ型は sysname で、既定値は NULL です。

  • [ [ @wmi_namespace= ] 'wmi_namespace'
    イベントのクエリに対する WMI 名前空間を指定します。wmi_namespace のデータ型は sysname で、既定値は NULL です。

  • [ [ @wmi_query= ] 'wmi_query'
    警告に対する WMI イベントを指定するクエリを指定します。wmi_query のデータ型は nvarchar(512) で、既定値は NULL です。

リターン コード値

0 (成功) または 1 (失敗)

説明

sysmessages が Microsoft Windows アプリケーション ログに書き込まれた場合にのみ、警告を発することができます。

sp_update_alert では、パラメータ値を指定した警告の設定のみが変更されます。パラメータを省略した場合は、現在の設定が保持されます。

権限

このストアド プロシージャを実行するには、sysadmin 固定サーバー ロールのメンバであることが必要です。

次の例では、警告が有効になっている Test Alert の設定を 0 (無効) に変更します。

USE msdb ;
GO

EXEC dbo.sp_update_alert
    @name = N'Test Alert',
    @enabled = 0 ;
GO