次の方法で共有


sp_notify_operator (Transact-SQL)

更新 : 2006 年 7 月 17 日

データベース メールを使用して、オペレータに電子メール メッセージを送信します。

構文

sp_notify_operator
    [ @profile_name = ] 'profilename' ,
    [ @id = ] id ,
    [ @name = ] 'name' ,
    [ @subject = ] 'subject' ,
        [ @body = ] 'message' ,
    [ @file_attachments = ] 'attachment'
    [ @mail_database = ] 'mail_host_database'

引数

  • [ @profile_name= ] 'profilename'
    メッセージの送信に使用するデータベース メール プロファイルの名前を指定します。profilename のデータ型は nvarchar(128) です。profilename を指定しない場合、既定のデータベース メール プロファイルが使用されます。
  • [ @id= ] id
    メッセージ送信先のオペレータの ID を指定します。id のデータ型は int で、既定値は NULL です。id または name のいずれかを指定する必要があります。
  • [ @name= ] 'name'
    メッセージ送信先のオペレータの名前を指定します。name のデータ型は nvarchar(128) で、既定値は NULL です。id または name のいずれかを指定する必要があります。

    ms188349.note(ja-jp,SQL.90).gifメモ :
    オペレータがメッセージを受信するには、オペレータの電子メール アドレスが定義されている必要があります。
  • [ @subject= ] 'subject'
    電子メール メッセージの件名を指定します。subject のデータ型は nvarchar(256) で、既定値はありません。
  • [ @body= ] 'message'
    電子メール メッセージの本文を指定します。message のデータ型は nvarchar(max) で、既定値はありません。
  • [ @file_attachments= ] 'attachment'
    電子メール メッセージに添付するファイルの名前を指定します。attachment のデータ型は nvarchar(512) で、既定値はありません。
  • [ @mail_database= ] 'mail_host_database'
    メール ホスト データベースの名前を指定します。mail_host_database のデータ型は nvarchar(128) です。mail_host_database を指定しない場合、既定では msdb データベースが使用されます。

リターン コードの値

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

解説

ここでは、指定したメッセージが、指定したオペレータの電子メール アドレスに送信されます。オペレータに電子メール アドレスが構成されていない場合、エラーが返されます。

通知をオペレータに送信するには、データベース メールとメール ホスト データベースを構成する必要があります。詳細については、「データベース メールの操作方法に関するトピック」を参照してください。

権限

既定では、このストアド プロシージャを実行できるのは、sysadmin 固定サーバー ロールのメンバです。他のユーザーには、msdb データベースの次のいずれかの SQL Server エージェント固定データベース ロールが許可されている必要があります。

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

これらのロールの権限の詳細については、「SQL Server エージェントの固定データベース ロール」を参照してください。

次の例では、データベース メール プロファイル AdventureWorks Administrator を使用して、電子メールをオペレータ François Ajenstat に送信します。電子メールの件名は Test Notification です。電子メール メッセージには、"This is a test of notification via e-mail." という文が記載されています。

USE msdb ;
GO

EXEC dbo.sp_notify_operator
   @profile_name = N'AdventureWorks Administrator',
   @name = N'François Ajenstat',
   @subject = N'Test Notification',
   @body = N'This is a test of notification via e-mail.' ;
GO

参照

関連項目

sp_add_operator (Transact-SQL)
sp_help_operator (Transact-SQL)
sp_delete_operator (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2006 年 7 月 17 日

変更内容 :
  • 例の引数名 @profilename@profile_name に変更。

2006 年 4 月 14 日

変更内容 :
  • 引数名 @profilename@profile_name に更新し、データ型を sysname から nvarchar(128) に変更。
  • @name のデータ型を sysname から nvarchar(128) に変更。