sysmail_update_account_sp(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 ,
[ @no_credential_change = ] changes to username and password ,
[ @enable_ssl = ] enable_ssl
인수
[ @account_id = ] account_id
업데이트할 계정 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'
메시지를 보낼 새 전자 메일 주소입니다. 이 주소는 인터넷 전자 메일 주소여야 합니다. 주소의 서버 이름은 데이터베이스 메일이 이 계정에서 메일을 보낼 때 사용하는 서버입니다. 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 데이터베이스 엔진 서비스의 자격 증명을 사용하여 메일을 SMTP 서버로 보낼지 여부를 지정합니다. use_default_credentials는 bit이며 기본값은 없습니다. 이 매개 변수가 1이면 데이터베이스 메일은 데이터베이스 엔진의 자격 증명을 사용합니다. 이 매개 변수가 0이면 데이터베이스 메일은 SMTP 서버 인증을 위해 @username 및 @password를 사용합니다. @username 및 @password가 NULL이면 데이터베이스 메일은 익명 인증을 사용합니다. 이 매개 변수를 지정하기 전에 해당 SMTP 관리자에게 문의하십시오.[ @no_credential_change = ] 사용자 이름과 암호의 변경 내용
기존 자격 증명(사용자 이름과 암호)이 변경되는지 여부를 지정합니다. 이 매개 변수가 1이면 자격 증명 변경이 없음을 나타내고 @username 및 @password가 필요하지 않습니다. 이 매개 변수가 0이면 자격 증명 변경을 나타내고 @username 및 @password를 제공해야 합니다. 이 매개 변수는 비트이며 기본값은 0입니다.[ @enable_ssl = ] enable_ssl
데이터베이스 메일에서 SSL(Secure Sockets Layer)을 사용하여 통신을 암호화할지 여부를 지정합니다. SMTP 서버에 SSL이 필요한 경우 이 옵션을 사용합니다. enable_ssl은 bit이며 기본값은 없습니다.
반환 코드 값
0(성공) 또는 1(실패)
주의
계정 이름과 계정 ID가 둘 다 지정되면 저장 프로시저는 계정에 대한 정보를 업데이트할 뿐만 아니라 계정 이름도 변경합니다. 계정 이름을 변경하면 계정 이름의 오류를 수정할 수 있습니다.
@no_credential_change 매개 변수는 메일 송신에 기본 인증을 사용 중인 계정에 대해 사용자 이름과 암호 외의 다른 내용을 변경하는 데 사용할 수 있습니다. 예를 들어 @no_credential_change = 1을 지정하면 사용자 이름과 암호를 제공하지 않고도 SSL을 설정할 수 있습니다.
sysmail_update_account_sp 저장 프로시저는 msdb 데이터베이스에 있으며 dbo 스키마가 소유합니다. 현재 데이터베이스가 msdb가 아닐 경우 이 프로시저를 세 부분으로 구성된 이름으로 실행해야 합니다.
사용 권한
sysadmin 고정 서버 역할의 멤버 자격이 필요합니다.
예
1. 계정에 대한 정보 변경
다음 예에서는 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;
2. 계정 이름 및 계정에 대한 정보 변경
다음 예에서는 계정 ID 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;
3. @no\_credential\_change를 사용하여 계정의 SSL만 변경
다음 예에서는 계정 ID 125의 SSL 설정을 변경합니다. 다른 모든 계정 정보에는 변동이 없습니다.
EXECUTE msdb.dbo.sysmail_update_account_sp
,@account_id = 125
,@enable_ssl = 1
,@no_credential_change = 1;
@no\_credential\_change=1이 지정되지 않으면, @username 및 @password에 별도의 값을 제공하지 않는 한 NULL 값이 할당됩니다.
변경 내역
업데이트된 내용 |
---|
새 매개 변수 @no_credential_change에 대한 정보가 구문, 인수 및 주의 섹션에 추가되었습니다. |
새 매개 변수 @no_credential_change를 사용한 SSL 설정 변경의 예가 추가되었습니다. |