我在ASP.NET中创建了一个带有登录页面的页面。登录后我已选择激活某些内容。默认情况下,此值在SQL数据库中设置为“False”。当用户单击激活按钮时,使用C#中的查询将此列更新为“True”。
我的问题是,在将值更新为“True”后,1小时后,即使用户已登录,此列也应自动更新为“False”。我怎么能用C#和SQL做到这一点?
答案 0 :(得分:3)
最简单的解决方案是将数据类型更改为datetime
,并将其值设置为用户上次单击激活按钮的值。然后你不需要在以后自动更新它,你只需要检查它的值是否在最后一小时内。
答案 1 :(得分:0)
简单地遵循步骤Here 您只需根据需要更改查询并每隔1小时设置一次计划
或者您可以在更新时创建触发器并添加此代码以延迟一小时
DECLARE @MyDateTime DATETIME
SET @MyDateTime = DATEADD(HOUR,1,GETDATE())
WAITFOR TIME @MyDateTime
SELECT GETDATE() CurrentTime