我想把一个查询结果用SQL发出邮件?这个过程怎么做

我想把一个查询结果用SQL发出邮件?这个过程怎么做,第1张

--1.启用Database Mail扩展存储过程

sp_configure 'show advanced options', 1

GO

RECONFIGURE

GO

sp_configure 'Database Mail XPs', 1

GO

RECONFIGURE

GO

sp_configure 'show advanced options', 0

GO

RECONFIGURE

GO

--2.添加account

exec msdb..sysmail_add_account_sp

        @account_name            = 'zhanghao' --邮件帐户名称SQL Server 使用

       ,@email_address           = '[email protected]' --发件人邮件地址

       ,@mailserver_name         = 'smtp.126.com'        --邮件服务器地址

       ,@mailserver_type         = 'SMTP'                --邮件协议SQL 2005只支持SMTP

       ,@port                    = 25                    --邮件服务器端口

       ,@username                = 'zhanghao' --用户名

       ,@password                = 'mima' --密码

       

--3.添加profile

exec msdb..sysmail_add_profile_sp

@profile_name = 'dba_profile'-- profile 名称

   ,@description  = 'dba mail profile'-- profile 描述

   ,@profile_id   = null

   

--4.映射account和profile

exec msdb..sysmail_add_profileaccount_sp  

@profile_name    = 'dba_profile'-- profile 名称

   ,@account_name    = 'zhanghao'-- account 名称

   ,@sequence_number = 1-- account 在profile中顺序

 

--5.1发送文本邮件

exec msdb..sp_send_dbmail

@profile_name =  'dba_profile'

   ,@recipients   =  '[email protected]'

   ,@subject      =  'SQL Server邮件测试'

   ,@body         =  '内容啊'

   ,@body_format  =  'TEXT'

   

--5.2发送附件

EXEC sp_send_dbmail

    @profile_name = 'dba_profile',

    @recipients = '[email protected]',

    @subject = '这是附件',

@file_attachments ='G:\乱七八糟\sql.txt'

--5.3发送查询结果

EXEC sp_send_dbmail

    @profile_name = 'dba_profile',

    @recipients = '[email protected]',

    @subject = '这是查询',

@query='select * from test.dbo.apo_city'

   

--6.查看邮件发送情况

select * from sysmail_allitems

select * from sysmail_mailitems

select * from sysmail_event_log

--7.删除邮件配置

Exec msdb..sysmail_delete_profileaccount_sp  

@profile_name = 'dba_profile',

    @account_name = 'zhanghao'

Exec msdb..sysmail_delete_profile_sp

@profile_name = 'dba_profile'

Exec msdb..sysmail_delete_account_sp

@account_name ='zhanghao'

SQL Server中的数据库邮件功能可以实现自动发送邮件,这个功能在实际的项目中非常的有用。那么如何配置SQLServer的数据库邮件功能呢?下面我给大家分享一下。

工具/材料

SQLServer Managment

首先打开数据库的管理文件夹,然后右键单击数据库邮件选项,选择配置数据库邮件,如下图所示

接下来会d出数据库邮件配置向导界面,这里直接点击下一步即可,如下图所示

然后需要选择配置任务,这里我们选择第一个选项即可,如果已经配置过数据库邮件的话则可以选择第二个选项,如下图所示

接下来在新建配置文件界面中给配置文件起一个名字,然后点击添加按钮,如下图所示

然后会进入新建数据库邮件账户界面,在这个界面中需要配置邮件服务器的地址以及端口,如下图所示

添加好邮件账户以后回到配置文件界面,这个时候新添加的邮件账户就在账户列表中了,然后点击下一步,如下图所示

接下来进入管理配置文件安全性的界面,我们勾选配置文件,然后点击下一步即可,如下图所示

然后需要进行系统参数的配置,这里大家根据自己的需要配置即可,如果没有特殊要求直接默认即可,如下图所示

接下来SQL Server会把刚才的配置都列举出来,我们检查一下,没有问题的话直接点击完成即可,如下图所示

最后我们打开数据库邮件的发送界面,用刚才配置好的数据库邮件发送一封测试邮件试试,如果正常发送则证明配置没问题


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9601628.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存