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
    Указывает, следует ли отправлять почту на SMTP-сервер с использованием учетных данных службы компонента SQL Server Database Engine. Аргумент 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. Используйте этот аргумент, если требуется поддержка протокола SSL для SMTP-сервера. Аргумент enable_ssl имеет тип bit и не имеет значения по умолчанию.

Значения кодов возврата

0 (успешное завершение) или 1 (неуспешное завершение)

Замечания

Если указаны имя учетной записи и идентификатор учетной записи, то хранимая процедура изменяет имя учетной записи наряду с изменением данных учетной записи. Изменение имени учетной записи может быть полезно для исправления ошибок в имени учетной записи.

Хранимая процедура sysmail_update_account_sp находится в базе данных msdb и принадлежит схеме dbo. Если текущей базой данных является не msdb, процедуру следует выполнять с трехкомпонентным именем.

Разрешения

Требует членства в предопределенной роли сервера sysadmin.

Примеры

А. Изменение данных учетной записи

В следующем примере обновляется учетная запись AdventureWorks Administrator в базе данных msdb. Данные для учетной записи устанавливается в соответствии с предоставленными значениями.

EXECUTE msdb.dbo.sysmail_update_account_sp
    ,@account_name = 'AdventureWorks2008R2 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;

Б. Изменение имени учетной записи и данных учетной записи

В следующем примере изменяется имя, а также обновляются данные учетной записи с идентификатором 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;