是否在一段时间后在SQL Server中自动删除记录?

2022-07-21 00:00:00 sql sql-delete sql-server

我有一个表,它有两个属性:ID和创建该记录时的日期时间。

如何创建触发器(过程?)例如,在1天后删除记录?

我希望任务每X次自动执行一次,而不是手动执行。


解决方案

我建议您使用SQL Server代理,并编写一个存储过程来删除每一天过的行。

您可以在此link中了解如何使用SQL Server代理作业。

和类似的存储过程:

CREATE  PROCEDURE DeleteRows()
AS
BEGIN
DELETE FROM mytable
WHERE (DATEDIFF(DAY,  DATEADD(day, -1, DateColum), GETDATE())) >= 1
END

编辑: WHERE语句中的数字1是Days。您可以将其更改为您想要使用的内容。

相关文章