sysmail_update_profileaccount_sp (Transact-SQL)

更新 Database Mail 設定檔內的帳戶序號。

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

語法

sysmail_update_profileaccount_sp  { [ @profile_id = ] profile_id 
| [ @profile_name = ] 'profile_name' } ,
    { [ @account_id = ] account_id | [ @account_name = ] 'account_name' } ,
    [ @sequence_number = ] sequence_number

引數

  • [ @profile_id = ] profile_id
    要更新之設定檔的設定檔識別碼。 profile_id 是 int,預設值是 NULL。 您必須指定 profile_id 或 profile_name 其中之一。

  • [ @profile_name = ] 'profile_name'
    要更新之設定檔的設定檔名稱。 profile_name 是 sysname,預設值是 NULL。 您必須指定 profile_id 或 profile_name 其中之一。

  • [ @account_id = ] account_id
    這是要更新的帳戶識別碼。 account_id 是 int,預設值是 NULL。 您必須指定 account_id 或 account_name 其中之一。

  • [ @account_name = ] 'account_name'
    這是要更新的帳戶名稱。 account_name 是 sysname,預設值是 NULL。 您必須指定 account_id 或 account_name 其中之一。

  • [ @sequence_number = ] sequence_number
    帳戶的新序號。 sequence_number 是 int,沒有預設值。 序號決定了帳戶在設定檔中的使用順序。

傳回碼值

0 (成功) 或 1 (失敗)

結果集

備註

如果指定的帳戶與指定的設定檔無關,便會傳回一則錯誤。

序號決定了 Database Mail 使用設定檔中之帳戶的順序。 如果是新的電子郵件訊息,Database Mail 會從序號最低的帳戶開始。 如果這個帳戶失敗,Database Mail 會使用序號次高的帳戶,依此類推,直到 Database Mail 傳送訊息成功為止,或直到序號最高的帳戶失敗為止。 如果序號最高的帳戶失敗,電子郵件訊息也會失敗。

如果有多個序號相同的帳戶存在,Database Mail 只會將其中一個帳戶用在給定的電子郵件訊息上。 在這個情況下,Database Mail 並無法保證這個序號會用到哪個帳戶,也無法保證各訊息會用到相同的帳戶。

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

權限

這個程序的執行權限預設會授與系統管理員 (sysadmin) 固定伺服器角色的成員。

範例

下列範例會變更 msdb 資料庫 AdventureWorks Administrator 設定檔內之 Admin-BackupServer 帳戶的序號。 執行這個程式碼之後,帳戶的序號是 3,表示如果前面兩個帳戶失敗,就輪到它。

EXECUTE msdb.dbo.sysmail_update_profileaccount_sp
    @profile_name = 'AdventureWorks Administrator'
    ,@account_name = 'Admin-BackupServer',
    ,@sequence_number = 3;

請參閱

參考

Database Mail 預存程序 (Transact-SQL)

概念

Database Mail

建立 Database Mail 帳戶

Database Mail 組態物件