Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如果数据库记录插入时间超过10分钟,则发送电子邮件_Sql_Sql Server 2008 - Fatal编程技术网

Sql 如果数据库记录插入时间超过10分钟,则发送电子邮件

Sql 如果数据库记录插入时间超过10分钟,则发送电子邮件,sql,sql-server-2008,Sql,Sql Server 2008,我有一个SQL表,它存储处理作业的数据(不是SQL作业。系统中的作业)。如果某个作业在未处理的情况下超过10分钟,我希望收到警报 我有jobsubmittedtime的属性。 如果DateDiff(分钟,jobsubmittedtime,GETDATE())>10我想要一个电子邮件触发器 实现这一目标的最佳方法是什么 where jobsubmittedtime > DATEADD(MINUTE, -10, GETDATE()) 这将允许查询基于范围扫描进行优化 如果你改为写: wher

我有一个SQL表,它存储处理作业的数据(不是SQL作业。系统中的作业)。如果某个作业在未处理的情况下超过10分钟,我希望收到警报

我有jobsubmittedtime的属性。 如果
DateDiff(分钟,jobsubmittedtime,GETDATE())>10
我想要一个电子邮件触发器

实现这一目标的最佳方法是什么

where jobsubmittedtime > DATEADD(MINUTE, -10, GETDATE())
这将允许查询基于范围扫描进行优化

如果你改为写:

where DATEDIFF(MINUTE, jobsubmittedtime, GETDATE()) > 10
然后,SQL Server可能会选择执行一次完整的表扫描,在每一行上运行该过程来计算DATEDIFF(),但效率不如第一种方法。通常,尝试对常量和输入变量进行计算,而不是对行值进行计算。有时这是无法避免的,但你明白了重点。

试试:

where jobsubmittedtime > DATEADD(MINUTE, -10, GETDATE())
这将允许查询基于范围扫描进行优化

如果你改为写:

where DATEDIFF(MINUTE, jobsubmittedtime, GETDATE()) > 10

然后,SQL Server可能会选择执行一次完整的表扫描,在每一行上运行该过程来计算DATEDIFF(),但效率不如第一种方法。通常,尝试对常量和输入变量进行计算,而不是对行值进行计算。有时这是不可避免的,但你明白了。创建作业如何
监督其他作业
按计划运行10分钟,用
where DateDiff(分钟,jobsubmittedtime,GETDATE())>10查询你的表并将结果发送到电子邮件?谢谢你的建议。我正在进行这项工作。创建作业
监督其他作业如何
按计划运行10分钟,使用
where DateDiff(分钟,作业提交时间,GETDATE())>10查询您的表并将结果发送到电子邮件?谢谢您的建议。我正在努力