SQL Server 2000:限制行数

时间:2009-06-26 16:15:37

标签: sql sql-server database tsql

有没有办法限制SQL Server 2000数据库中的行数,以便在新的行进入时删除较旧的行?

我有一些数据,我想保留大约三十天 - 之后,我不关心数据是否存在或被删除 - 只要表格不会变大。 / p>

任何其他建议或欢迎 - 我对数据库编程很体面,但我绝不是DBA。

感谢。

2 个答案:

答案 0 :(得分:5)

不明确,不。但是,您可以在TRIGGER上为数据库设置INSERT以删除超过30天的任何行(因此,只有在添加更多行时才删除行,而不仅仅是为了它)。或者,您可以使用SQL Server代理并设置存储过程来执行

delete from table where insertdate <= dateadd(d, -30, getdate())

答案 1 :(得分:3)

执行此操作的典型方法是创建存储过程或一大块T-SQL代码,删除旧条目,并让每晚或每周运行这块T-SQL或任何您需要的东西。< / p>

没有系统内置的方法来限制行数,让SQL Server自动抛出最旧的行。

MARC