sysmail_add_account_sp (Transact-SQL)
適用対象: SQL ServerAzure SQL Managed Instance
SMTP アカウントに関する情報を保持する新しいデータベース メール アカウントを作成します。
構文
sysmail_add_account_sp [ @account_name = ] 'account_name' ,
[ @email_address = ] 'email_address' ,
[ [ @display_name = ] 'display_name' , ]
[ [ @replyto_address = ] 'replyto_address' , ]
[ [ @description = ] 'description' , ]
[ @mailserver_name = ] 'server_name'
[ , [ @mailserver_type = ] 'server_type' ]
[ , [ @port = ] port_number ]
[ , [ @username = ] 'username' ]
[ , [ @password = ] 'password' ]
[ , [ @use_default_credentials = ] use_default_credentials ]
[ , [ @enable_ssl = ] enable_ssl ]
[ , [ @account_id = ] account_id OUTPUT ]
[ ; ]
引数
[ @account_name = ] 'account_name'
追加するアカウントの名前を指定します。 @account_nameは sysname で、既定値はありません。
[ @email_address = ] 'email_address'
メッセージの送信先の電子メール アドレス。 このアドレスは、インターネットの電子メール アドレスである必要があります。 @email_addressは nvarchar(128)で、既定値はありません。 たとえば、SQL Server エージェント用のアカウントがアドレスSqlAgent@adventure-works.com
から電子メールを送信する場合があります。
[ @display_name = ] 'display_name'
このアカウントからの電子メール メッセージで使用する表示名。 @display_nameは nvarchar(128) で、既定値は NULL
. たとえば、SQL Server エージェントのアカウントでは、電子メール メッセージに名前SQL Server Agent Automated Mailer
が表示される場合があります。
[ @replyto_address = ] 'replyto_address'
このアカウントから送信するメッセージに対する返信アドレスを指定します。 @replyto_addressは nvarchar(128) で、既定値は NULL
. たとえば、SQL Server エージェントのアカウントへの応答は、danw@adventure-works.com
データベース管理者に送信される場合があります。
[ @description = ] 'description'
アカウントの説明。 @descriptionは nvarchar(256) で、既定値は NULL
.
[ @mailserver_name = ] 'server_name'
このアカウントで使用する SMTP メール サーバーの名前または IP アドレスを指定します。 SQL Server を実行するコンピューターは、@mailserver_nameを IP アドレスに解決できる必要があります。 @mailserver_nameは sysname で、既定値はありません。
[ @mailserver_type = ] 'server_type'
電子メール サーバーの種類。 @mailserver_typeは sysname で、既定値は SMTP
.
[ @port = ] port_number
電子メール サーバーのポート番号。 @portは int で、既定値は 25
.
[ @username = ] 'username'
電子メール サーバーへのログオンに使用するユーザー名。 @usernameは nvarchar(128) で、既定値は NULL
. このパラメーターの場合、NULL
データベース メールはこのアカウントの認証を使用しません。 メール サーバーで認証が必要ない場合は、ユーザー名に使用 NULL
します。
[ @password = ] 'password'
子メール サーバーへのログオンに使用するパスワードを指定します。 @passwordは nvarchar(128) で、既定値は NULL
. ユーザー名が指定されていない限り、パスワードを指定する必要はありません。
[ @use_default_credentials = ] use_default_credentials
SQL Server データベース エンジンの資格情報を使用して SMTP サーバーにメールを送信するかどうかを指定します。 @use_default_credentialsはビットで、既定値は 0
. このパラメーターの場合、1
データベース メールはデータベース エンジンの資格情報を使用します。 このパラメーターが指定されている場合、0
データベース メールは@usernameパラメーターと@password パラメーターを送信し、それ以外の場合は@usernameおよび@passwordパラメーターなしでメールを送信します。
[ @enable_ssl = ] enable_ssl
データベース メールで Secure Sockets Layer を使用して通信を暗号化するかどうかを指定します。 @enable_sslはビットで、既定値は 0
.
[ @account_id = ] account_id OUTPUT
新しいアカウントのアカウント ID を返します。 @account_idは int で、既定値は NULL
.
リターン コードの値
0
(成功) または 1
(失敗)。
解説
データベース メールは、@email_address、@display_name、および@replyto_addressに個別のパラメーターを提供します。 @email_address パラメーターは、メッセージの送信先アドレスです。 @display_name パラメーターは、電子メール メッセージのフィールドにFrom:
表示される名前です。 @replyto_address パラメーターは、電子メール メッセージへの返信が送信されるアドレスです。 たとえば、SQL Server エージェントに使用されるアカウントは、SQL Server エージェントにのみ使用される電子メール アドレスから電子メール メッセージを送信できます。 そのアドレスからのメッセージにはフレンドリ名が表示されるため、受信者はメッセージを送信SQL Server エージェント簡単に判断できます。 受信者がメッセージに返信した場合、返信は、SQL Server エージェントで使用されるアドレスではなく、データベース管理者に送信されます。 このシナリオでは、アカウントが電子メール アドレスとして使用 SqlAgent@adventure-works.com
されます。 表示名は .SQL Server Agent Automated Mailer
アカウントはアドレスへの返信として使用danw@adventure-works.com
されるため、このアカウントから送信されたメッセージへの返信は、SQL Server エージェントの電子メール アドレスではなく、データベース管理者に送信されます。 これら 3 つのパラメーターに個別の設定を指定することで、データベース メールでは、ニーズに合わせてメッセージを構成できます。
@mailserver_type パラメーターは値SMTP
をサポートしています。
@use_default_credentialsすると1
、SQL Server データベース エンジンの資格情報を使用して SMTP サーバーにメールが送信されます。 アカウント@use_default_credentials@username 0
と@passwordが指定されている場合、アカウントは SMTP 認証を使用します。 @usernameと@passwordは、アカウントが SMTP サーバーに使用する資格情報であり、SQL Server またはコンピューターが存在するネットワークの資格情報ではありません。
ストアド プロシージャ sysmail_add_account_sp
はデータベース内にあり msdb
、スキーマによって dbo
所有されています。 現在のデータベースが実行されていない msdb
場合は、プロシージャを 3 部構成の名前で実行する必要があります。
アクセス許可
このストアド プロシージャは、db_owner ロールによって所有されています。 任意のユーザーにアクセス許可を付与 EXECUTE
できますが、SQL Server のアップグレード中にこれらのアクセス許可がオーバーライドされる可能性があります。
例
次の例では、という名前 AdventureWorks Administrator
のアカウントを作成します。 アカウントは電子メール アドレス dba@adventure-works.com
を使用し、SMTP メール サーバーにメールを送信します smtp.adventure-works.com
。 このアカウントから送信された電子メール メッセージは、メッセージの行にFrom:
表示AdventureWorks Automated Mailer
されます。 メッセージへの返信は danw@adventure-works.com
に転送されます。
EXEC msdb.dbo.sysmail_add_account_sp
@account_name = 'AdventureWorks Administrator',
@description = 'Mail account for administrative e-mail.',
@email_address = 'dba@adventure-works.com',
@display_name = 'AdventureWorks Automated Mailer',
@mailserver_name = 'smtp.adventure-works.com';
関連するコンテンツ
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示