sp_notify_operator (Transact-SQL)

適用対象:SQL Server

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

Transact-SQL 構文表記規則

構文

  
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'メッセージの送信に使用するデータベース メール プロファイルの名前。 profilenamenvarchar(128)です。 profilename が指定されていない場合は、既定のデータベース メール プロファイルが使用されます。

[ @id = ] id メッセージを送信するオペレーターの識別子。 idint で、既定値は NULL です。 ID または名前のいずれかを指定する必要があります。

[ @name = ] 'name' メッセージを送信するオペレーターの名前。 namenvarchar(128) で、既定値は NULL です。 ID または名前のいずれかを指定する必要があります。

Note

メッセージを受信する前に、オペレーターに電子メール アドレスを定義する必要があります。

[ @subject = ] 'subject' 電子メール メッセージの件名。 subjectnvarchar(256) で、既定値はありません。

[ @body = ] 'message' 電子メール メッセージの本文。 messagenvarchar(max) で、既定値はありません。

[ @file_attachments = ] 'attachment' 電子メール メッセージに添付するファイルの名前。 attachment is nvarchar(512), with no default.

[ @mail_database = ] 'mail_host_database' メール ホスト データベースの名前を指定します。 mail_host_databaseは nvarchar(128) です。 mail_host_databaseが指定されていない場合、msdb データベースが既定で使用されます。

リターン コードの値

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

解説

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

データベース メールとメール ホスト データベースは、オペレーターに通知を送信する前に構成する必要があります。

アクセス許可

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

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

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

次の例では、データベース メール プロファイル François Ajenstat を使用して、電子メールをオペレーター AdventureWorks Administrator に送信します。 電子メールの件名は 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  

関連項目

SQL Server エージェント ストアド プロシージャ (Transact-SQL)
sp_add_operator (Transact-SQL)
sp_help_operator (Transact-SQL)
sp_delete_operator (Transact-SQL)