Поделиться через


sysmail_update_account_sp (Transact-SQL)

Область применения: SQL Server

Изменяет данные в существующей учетной записи компонента 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
    , [ @timeout = ] 'timeout'
    , [ @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, должен иметь возможность разрешать @mailserver_name IP-адресу. @mailserver_name — sysname без значения по умолчанию.

[ @mailserver_type = ] 'server_type'

Новый тип почтового сервера. @mailserver_type — sysname без значения по умолчанию. Поддерживается только значение SMTP .

[ @port = ] port_number

Новый номер порта почтового сервера. @port не используется без значения по умолчанию.

[ @timeout = ] "тайм-аут"

Параметр timeout для SmtpClient.Send одного сообщения электронной почты. @timeout в секундах без значения по умолчанию.

[ @username = ] "имя пользователя"

Новое имя пользователя для входа на почтовый сервер. @username — sysname без значения по умолчанию.

[ @password = ] 'password'

Новый пароль для входа на почтовый сервер. @password — sysname без значения по умолчанию.

[ @use_default_credentials = ] use_default_credentials

Указывает, следует ли отправлять почту на SMTP-сервер с помощью учетных данных службы SQL Server ядро СУБД. @use_default_credentials бит, без значения по умолчанию. Если этот параметр равен 1, Database Mail использует учетные данные ядро СУБД. Если этот параметр равен 0, Database Mail использует @username и @password для проверки подлинности на SMTP-сервере. Если @username и @password, используется NULLанонимная проверка подлинности. Перед указанием этого аргумента следует проконсультироваться с администратором SMTP

[ @enable_ssl = ] enable_ssl

Указывает, шифрует ли database Mail обмен данными с помощью протокола TLS, ранее известного как протокол SSL. Используйте этот параметр, если на SMTP-сервере требуется tls. @enable_ssl бит, без значения по умолчанию.

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

0 (успешно) или 1 (сбой).

Замечания

При указании имени учетной записи и идентификатора учетной записи хранимая процедура изменяет имя учетной записи в дополнение к обновлению сведений для учетной записи. Изменение имени учетной записи полезно для исправления ошибок в имени учетной записи.

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

Разрешения

Вы можете предоставить EXECUTE разрешения для этой процедуры, но эти разрешения могут быть переопределены во время обновления SQL Server.

Примеры

А. Изменение сведений для учетной записи

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

EXEC 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,
    @timeout = 60,
    @username = NULL,
    @password = NULL,
    @use_default_credentials = 0,
    @enable_ssl = 0;

B. Изменение имени учетной записи и сведений для учетной записи

В следующем примере изменяется имя и обновляются сведения об учетной записи для идентификатора 125учетной записи. Новое имя учетной записи -Backup Mail Server.

EXEC 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,
    @timeout = 60,
    @username = NULL,
    @password = NULL,
    @use_default_credentials = 0,
    @enable_ssl = 0;