sysmail_update_account_sp (Transact-SQL)

變更現有 Database Mail 帳戶中的資訊。

主題連結圖示 Transact-SQL 語法慣例

語法

sysmail_update_account_sp [ [ @account_id = ] account_id ] [ , ] [ [ @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
    這是要更新的帳戶識別碼。 account_id 是 int,預設值是 NULL。 您必須至少指定 account_id 或 account_name 其中之一。 如果同時指定這兩者,程序會變更帳戶的名稱。

  • [ @account_name = ] 'account_name'
    這是要更新的帳戶名稱。 account_name 是 sysname,預設值是 NULL。 您必須至少指定 account_id 或 account_name 其中之一。 如果同時指定這兩者,程序會變更帳戶的名稱。

  • [ @email_address = ] 'email_address'
    這是傳送訊息的新來源電子郵件地址。 這個地址必須是網際網路電子郵件地址。 地址中的伺服器名稱是 Database Mail 用來從這個帳戶傳送郵件的伺服器。 email_address 是 nvarchar(128),預設值是 NULL。

  • [ @display_name = ] 'display_name'
    這個帳戶發出的電子郵件訊息所用的新顯示名稱。 display_name 是 nvarchar(128),沒有預設值。

  • [ @replyto_address = ] 'replyto_address'
    這個帳戶發出的電子郵件訊息之 [回覆至] 標頭中所用的新地址。 replyto_address 是 nvarchar(128),沒有預設值。

  • [ @description = ] 'description'
    帳戶的新描述。 description 是 nvarchar(256),預設值是 NULL。

  • [ @mailserver_name = ] 'server_name'
    這個帳戶要用的 SMTP 郵件伺服器的新名稱。 執行 SQL Server 的電腦必須能夠將 server_name 解析成 IP 位址。 server_name 是 sysname,沒有預設值。

  • [ @mailserver_type = ] 'server_type'
    郵件伺服器的新類型。 server_type 是 sysname,沒有預設值。 在 SQL Server 2005 及更新的版本中,只支援 'SMTP' 的值。

  • [ @port = ] port_number
    郵件伺服器的新通訊埠編號。 port_number 是 int,沒有預設值。

  • [ @username = ] 'username'
    用來登入郵件伺服器的新使用者名稱。 User name 是 sysname,沒有預設值。

  • [ @password = ] 'password'
    用來登入郵件伺服器的新密碼。 password 是 sysname,沒有預設值。

  • [ @use_default_credentials = ] use_default_credentials
    指定是否要使用 SQL Server Database Engine 服務的認證將郵件傳送至 SMTP 伺服器。 use_default_credentials 是 bit,沒有預設值。 當此參數是 1 時,Database Mail 會使用 Database Engine 的認證。 當此參數是 0 時,Database Mail 會使用 @username@password 在 SMTP 伺服器上進行驗證。 如果 @username@password 是 NULL,則它會使用匿名驗證。 在指定此參數之前,請洽 SMTP 管理員。

  • [ @enable_ssl = ] enable_ssl
    指定 Database Mail 是否使用安全通訊端層 (SSL) 加密通訊。 如果 SMTP 伺服器上需要 SSL,則使用此選項。 enable_ssl 是 bit,沒有預設值。

傳回碼值

0 (成功) 或 1 (失敗)

備註

當同時指定帳戶名稱和帳戶識別碼時,除了更新帳戶資訊之外,預存程序還會變更帳戶名稱。 在更正帳戶名稱的錯誤時,變更帳戶名稱可能會很有用。

預存程序 sysmail_update_account_spmsdb 資料庫中,擁有者是 dbo 結構描述。 如果目前的資料庫不是 msdb,就必須利用三部分名稱來執行這個程序。

權限

需要系統管理員 (sysadmin) 固定伺服器角色的成員資格。

範例

A.變更帳戶的資訊

下列範例會更新 msdb 資料庫中的 AdventureWorks Administrator 帳戶。 帳戶資訊設成所提供的值。

EXECUTE msdb.dbo.sysmail_update_account_sp
    ,@account_name = 'AdventureWorks Administrator'
    ,@description = 'Mail account for administrative e-mail.'
    ,@email_address = 'dba@Adventure-Works.com'
    ,@display_name = 'AdventureWorks Automated Mailer'
    ,@replyto_address = NULL
    ,@mailserver_name = 'smtp.Adventure-Works.com'
    ,@mailserver_type = 'SMTP'
    ,@port = 25
    ,@username = NULL
    ,@password = NULL
    ,@use_default_credentials = 0
    ,@enable_ssl = 0;

B.變更帳戶名稱和帳戶資訊

下列範例會利用帳戶識別碼 125 來變更名稱及更新帳戶資訊。 帳戶的新名稱是 Backup Mail Server。

EXECUTE msdb.dbo.sysmail_update_account_sp
    ,@account_id = 125
    ,@account_name = 'Backup Mail Server'
    ,@description = 'Mail account for administrative e-mail.'
    ,@email_address = 'dba@Adventure-Works.com'
    ,@display_name = 'AdventureWorks Automated Mailer'
    ,@replyto_address = NULL
    ,@mailserver_name = 'smtp-backup.Adventure-Works.com'
    ,@mailserver_type = 'SMTP'
    ,@port = 25,
    ,@username = NULL
    ,@password = NULL
    ,@use_default_credentials = 0
    ,@enable_ssl = 0;

請參閱

參考

Database Mail 預存程序 (Transact-SQL)

概念

Database Mail

建立 Database Mail 帳戶