我有一个 SQL 存储过程,仅当查找表值具有今天的日期时才需要执行。
如果不是,那么它应该在 30 分钟后以相同的标准再次运行。
我怎样才能做到这一点?
查找表只有一个日期行值 = '12-14-2012'。它将被另一个过程改变。
我有一个 SQL 存储过程,仅当查找表值具有今天的日期时才需要执行。
如果不是,那么它应该在 30 分钟后以相同的标准再次运行。
我怎样才能做到这一点?
查找表只有一个日期行值 = '12-14-2012'。它将被另一个过程改变。
像这样的东西可以为你做。请注意,此代码不会执行,您需要将项目替换为您的值。
DECLARE @Today DATE
SET @Today = GETDATE()
IF EXISTS (SELECT 'x' FROM MyTable WHERE CAST(ColumnName as DATE) = @Today)
BEGIN
EXEC Sproc Here
END
在较高级别上,您可以使用 SQL Server 代理来安排 proc。要决定是否运行,您可以在 proc 中放置类似的内容
IF EXISTS(SELECT * FROM LOOKUP WHERE colname = convert(varchar, getdate(), 110))
BEGIN
--do stuff
END