sql - 程序时间执行计数器

标签 sql sql-server

我有一个将数据从一个表插入到另一个表的过程,一次需要 5 分钟,下一次需要 15 分钟。 当过程需要超过 10 分钟时,我想编写在我的日志表中创建日志的代码。 ms sql中是否存在我可以使用的任何函数或时间计数器?

最佳答案

将以下行添加到您的 SP 中,它应该可以工作:

ALTER PROCEDURE YourSP
    AS
BEGIN
DECLARE @StartTime AS DATETIME = GETDATE();
... <Your current lines>
IF DATEDIFF(mi, @StartTime, GETDATE()) > 10
    INSERT INTO LogTable <YourFields>, MinutesSpent 
    VALUES <YourValues>, DATEDIFF(mi, @StartTime, GETDATE())
END

关于sql - 程序时间执行计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54018561/

相关文章:

sql-server - 重命名 SQL Server 实例

.net - 如何重复行值

sql - 如何使用存储过程的返回值设置一个值

c# - 查询抛出 "IndexOutOfRange"

sql - 使用 '=' 或 LIKE 比较 SQL 中的字符串?

sql-server - 切换到 UTF-8 时最大的风险是什么?

mysql - 如何在 oracle sql 中合并(列)两个 SELECT 语句的输出?

sql - 递归查询以在postgreSQL中给出路由

mysql - 如何在 SQL 中获取具有 MAX 和 MIN 值的行的 ID

sql - 从 CTE 创建的动态表(父/子)