sqlserver数据库使用存储过程和dbmail实现定时发送邮件 |
上文已讲过如何在数据库中配置数据库邮件发送(备注: 数据库邮件功能是 基于SMTP实现的,首先在系统中 配置SMTP功能 。即 在 “添加/删除程序”面板中 “增加/删除WINDOWS组件”,选中并双击 打开"IIS"或 “应用程序”,勾选 "SMTP SERVICE"然后 一路 点“下一步”即可 。一般不需要这一步,直接配置即可) 复制代码 代码如下: Create PROCEDURE [dbo].[sp_send_error_alert] AS declare @v_contentnvarchar(max), @v_mail_tonvarchar(500), @v_bodynvarchar(max), @v_titilenvarchar(100) ,@v_br_idnvarchar(50) ,@v_installmentsnvarchar(10) ,@v_remarknvarchar(100) BEGIN SETNOCOUNTON; set@v_titile=\测试邮件内容标题; set@v_content=\\; DECLAREcursor_repaymentCURSORFOR OPENcursor_repayment set@v_content=@v_content+\<tr><td>\+@v_br_id+\</td>\+\<td>\+@v_installments+\</td>\+\<td>\+@v_remark+\</td></tr>\; fetchnextfromcursor_repaymentinto CLOSEcursor_repayment;--关闭游标 ifLEN(@v_content)>0 创建Job(SqlServer代理->作业),设置执行参数,定时执行此存储过程,即可实现定时发送邮件效果 。 |