满足日期条件后如何从SQL Server发送邮件

时间:2019-06-04 18:18:41

标签: sql sql-server triggers

我需要在满足日期条件(即DATE_FIN一小时后发送邮件)的条件下从SQL Server发送电子邮件。

下表如下:

SELECT [ID_EVENTO]
,[FIRST NAME]
,[OBJECTIVE]
,[START DATE]
,[END DATE]
,[ID_LUGAR]
FROM [Events]. [Dbo]. [TBL_EVENTO]

首先,我考虑过使用触发器来完成此操作,但是它变得越来越复杂...

您对我有什么建议?

2 个答案:

答案 0 :(得分:1)

为什么您没有安排一个计划运行的数据库作业,例如每分钟或您认为更适合自己需求的频率。该作业将检查距离END_DATE值是否已经过了一个小时,并将触发电子邮件。

HTH!

答案 1 :(得分:0)

创建触发器,但我需要将end_date增加1并发送邮件

ALTER TRIGGER [dbo].[enviarCorreo]
    ON [dbo].[TBL_EVENTO]
    AFTER INSERT
AS

EXEC msdb.dbo.sp_send_dbmail
   @profile_name = 'Pruebas',
   @recipients = 'pruebacorreo@correo.com',
   @body = 'Prueba mail',
   @subject = 'Prueba correo' ;