gpt4 book ai didi

sql-server - 日期时间比较更新两列

转载 作者:行者123 更新时间:2023-12-04 05:57:54 24 4
gpt4 key购买 nike

我有一个 datetime由 SQL Server 在将新作业添加到数据库时创建。作业添加到数据库后 3 小时未完成,日志级别和具有唯一作业 ID 的作业的状态应更改。

这是我到目前为止。 (不检查状态)

use DistributedComputing
if exists (select * from sys.objects where type = 'P' and name = 'proc_dc_timeout')
drop procedure proc_dc_timeout
go
create procedure proc_dc_timeout
AS
declare @JobID int
begin
if exists (select StartDate from Job where JobID = @JobID and DATEDIFF(hh,StartDate,GETDATE()) > 3 )
update Job
set LogLevel = 1, Status = 'error'
end

go
execute proc_dc_timeout

但是,如果我运行查询,则不会影响任何行。请帮忙

最佳答案

您的变量 @JobID已声明,但未设置 - 所以 - 您的 IF语句永远不会成功,因为任何与 NULL 值的比较都将返回 false。您要么需要将值分配给变量,要么使用 IS NULL比较

关于sql-server - 日期时间比较更新两列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9296370/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com