利用SQL Server傳送郵件

2021-06-27 07:53:13 字數 2817 閱讀 1297

配置sql server ,允許發郵件這裡有兩種方式一中是通過介面操作,一中是全**操作。兩種方式的結果是一樣的,使用者可以先通過**操作,在通過介面操作去檢視

1**操作

--1.配置資料

exec sp_configure 'show advanced options',1

reconfigure with override

go exec sp_configure 'database mail xps',1

reconfigure with override

go --2.建立郵件帳戶資訊

exec msdb..sysmail_add_account_sp

@account_name ='etlerrormaillog', -- 郵件帳戶名稱

@email_address ='******@qq.com' , -- 發件人郵件位址

@display_name ='系統管理員', -- 發件人姓名

@replyto_address =null,

@description = null,

@mailserver_name = 'smtp.qq.com', -- 郵件伺服器位址

@mailserver_type = 'smtp', -- 郵件協議

@port =25, -- 郵件伺服器端口

@username = '******@qq.com', -- 使用者名稱

@password = '******', -- 密碼

@use_default_credentials =0,

@enable_ssl =0,

@account_id = null

go--3.資料庫配置檔案

if exists(select name from msdb..sysmail_profile where name=n'etlerrorprofilelog')

begin

exec msdb..sysmail_delete_profile_sp

@profile_name='etlerrorprofilelog'

endexec msdb..sysmail_add_profile_sp

@profile_name = 'etlerrorprofilelog', -- profile 名稱

@description = '資料庫郵件配置檔案', -- profile 描述

@profile_id = null

go--4.使用者和郵件配置檔案相關聯

exec msdb..sysmail_add_profileaccount_sp

@profile_name = 'etlerrorprofilelog', -- profile 名稱

@account_name = 'etlerrormaillog', -- account 名稱

@sequence_number = 1 -- account 在 profile 中順序

--5.傳送文字測試郵件

exec msdb..sp_send_dbmail

@profile_name='etlerrorprofilelog',

@recipients='*******@qq.com', --收件人

@subject='test title this is test ',

@body=n'z中文郵件內容 中文郵件內容'

go--6.其他的傳送語句

--基本的傳送語句

exec sp_send_dbmail @profile_name = 'xx_adam',

@recipients = '[email protected]',

@subject = '我資料庫郵件測試成功了!',

@body = 'hello,world!'

--包含查詢的

exec sp_send_dbmail @profile_name = 'xx_adam',

@recipients = '[email protected]',

@subject = '查詢結果',

@query = 'select * from demo.dbo.orders',

--包含附件

exec sp_send_dbmail @profile_name = 'xx_adam',

@recipients = '[email protected]',

@subject = '包含附件',

@body = '有附件,請查收',

@file_attachments = 'c:a.txt'

--將查詢作為附件

exec sp_send_dbmail @profile_name = 'xx_adam',

@recipients = '[email protected]',

@subject = '查詢結果',

@body = '查詢結果在附件中',

@query = 'select * from demo.dbo.orders',

@attach_query_result_as_file = 1,

@query_attachment_filename = 'a.txt'

1.介面配置 sql server 外圍配置

2.設定基礎賬號

3.傳送郵件

sql server 傳送郵件

sql server 並沒有內建郵件伺服器 mail server 它跟我們傳送郵件一樣,需要使用者名稱和密碼通過 smtp message transfer protocol 去連線郵件伺服器。我們想讓 sql server 來傳送郵件,首先要告訴它使用者名稱,密碼,伺服器位址,網路傳送協議,郵件...

SqlServer傳送郵件

每天上班。開啟電腦,總是先看看資料庫的運 況,看看日誌。於是就想利用是sqlserver自身的郵件系統,每天給自己定時發郵件,提高一點效率。sqlserver圖形化介面比較強大,配置傳送郵件也比較簡單 我是2012版 一 啟用database mail xps功能 a 檢視狀態 select nam...

sql server傳送郵件

declare mailprofilename nvarchar max declare mailto nvarchar max declare mailcc nvarchar max declare mailsubject nvarchar max declare mailbody nvarcha...