使用重复存储过程在DB中注销用户

时间:2016-06-20 14:52:24

标签: sql-server stored-procedures

在我们的MSSQL数据库中,我们有一个表'users'。 在该表中,我们有几列。 其中2列是'isOnline'和'lastUpdated'。 当用户登录时,我们将标志'isOnline'设置为1。

我们想要检查'lastUpdated'超过15分钟的递归存储过程(比方说每30秒)。

如果是,我们要将'isOnline'标志设置为0。

之前从未这样做过,所以任何帮助都会受到赞赏!

提前致谢!

2 个答案:

答案 0 :(得分:0)

创建一个计划作业,该作业将按特定计划运行存储过程。

  

创建作业并将其附加到作业

     
      
  • 在对象资源管理器中,连接到SQL Server数据库引擎的实例,然后展开该实例。
  •   
  • 展开SQL Server代理,展开“作业”,右键单击要计划的作业,然后单击“属性”。
  •   
  • 选择“计划”页面,然后单击“新建”。
  •   

https://msdn.microsoft.com/en-us/library/ms191439.aspx

答案 1 :(得分:0)

与威廉西法拉斯合作#39;答案

Update Users Set isOnline = 0
 Where DateDiff(MINUTE,lastUpdated,GetDate())>=15
   and isOnline = 1