有没有办法在Transact-SQL中创建后24小时自动删除行?
我正在创建一个网站(学习体验),用户需要在注册后点击通过电子邮件发送的验证链接。我希望用户在24小时内验证自己。
我认为我需要的是一个触发器,但我真的不确定语法,也不确定它是否可行。
答案 0 :(得分:17)
我不确定你的架构,但我会采用不同的方式。我会有一个与验证链接对应的数据库记录的日期/时间。单击链接时,请验证数据库记录的日期和时间是否在当前时间的24小时内。如果是这样,请允许,否则拒绝它。
答案 1 :(得分:2)
问:有没有办法在Transact-SQL中创建后24小时自动删除行?
答:好的。编写“sqlcmd”脚本,将其包装在.bat文件中,然后从Windows计划任务中调用它:
或者,根据您的版本,您可以从SQL Server代理安排相同的SQL脚本:
对事物采取不同的方式:
在任何情况下 - 你绝对,完全,完全, NOT 想要使用触发器!