본문 바로가기

DataBase/MSSql

mssql 에서 메일 발송

-- 메일 발송하는 쿼리문 

EXEC msdb.dbo.sp_send_dbmail
    @profile_name = '프로필명',
    @recipients = '받는사람메일주소',
    @body = '메일내용 HTML';
    @subject = '메일제목';

-- 1. 메일 확장 저장 프로시저 활성화
IF EXISTS ( 
    SELECT 1 FROM sys.configurations  
    WHERE NAME = 'Database Mail XPs' AND VALUE = 0) 
BEGIN 
  PRINT 'Enabling Database Mail XPs' 
  EXEC sp_configure 'show advanced options', 1;   
  RECONFIGURE 
  EXEC sp_configure 'Database Mail XPs', 1;   
  RECONFIGURE   
END

-- 2. 메일 계정 & 프로필 생성
EXECUTE msdb.dbo.sysmail_add_account_sp   
    @account_name = 'AdventureWorks Public Account',   
    @description = 'Mail account for use by all database users.',   
    @email_address = 'db_users@Adventure-Works.com',   
    @replyto_address = 'danw@Adventure-Works.com',   
    @display_name = 'AdventureWorks Automated Mailer',   
    @mailserver_name = 'smtp.Adventure-Works.com' ;  

EXECUTE msdb.dbo.sysmail_add_profile_sp   
    @profile_name = 'AdventureWorks Public Profile',   
    @description = 'Profile used for administrative mail.' ;  

-- 3. 프로필에 계정 추가
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp   
    @profile_name = 'AdventureWorks Public Profile',   
    @account_name = 'AdventureWorks Public Account',   
    @sequence_number =1 ;  

-- 4. 프로필 사용권한 부여
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp   
    @profile_name = 'AdventureWorks Public Profile',   
    @principal_name = '데이터베이스 사용자 또는 역할의 이름 & public',   
    @is_default = 1 ;

 

출처 : 

- https://docs.microsoft.com/ko-kr/sql/database-engine/configure-windows/database-mail-xps-server-configuration-option?view=sql-server-2017

- https://docs.microsoft.com/ko-kr/sql/relational-databases/database-mail/create-a-database-mail-profile?view=sql-server-2017

'DataBase > MSSql' 카테고리의 다른 글

bulk insert  (0) 2019.07.07
SQL 내부에서 Unicode로 변환하는 프로시저  (0) 2019.06.22
MS-SQL 2008 쿼리 튜닝할 때 사용되는 쿼리문  (0) 2015.10.22
SQL Paging Query - 2005이상  (0) 2011.08.31
SQL Paging SP - 2000  (0) 2011.08.31