如何在SQL上移除过期数据

来源:百度知道 编辑:UC知道 时间:2024/06/15 20:26:36
SQL上的一个数据库体积过大了,经常发生堵塞死锁,我想将今年以前的数据备份出来并在原数据库上清除,应该怎么做啊。
我只会删除数据表上的数据,整个数据库上很多表的怎么清除啊

可以建立一个存储过程,用来执行这个操作,
步骤为
1.确定需要处理的表,可以从系统表中获得用户表,或者自己指定哪几张表需要处理
2.获得要处理的表名后,对每个表执行delete操作
3.其中的delete操作的限制条件可以用参数出入进来,例如日期在某日以前等,
呵呵,应该可以解决问题的,^_^

建立一个table2表
INSERT INTO table1
SELECT * FROM table2
WHERE table1.date < '2008-01-01'

delete from table2 where date < '2008-01-01'