数据库定时删除数据怎么做
本帖最后由 cgmecgwr 于 2012-12-24 11:29:05 编辑
要方便修改时间的。
时间通常是7天 14天左右
SQL数据库直接再里面弄作业判断 。还是程序里?
程序里那么大的数方便么.
各位用什么方法
[解决办法]
DECLARE @tb_name VARCHAR(100) ,
@col_name VARCHAR(100) ,
@sql VARCHAR(1000) ,
@uchar DATETIME = DATEADD(dd,-7,GETDATE())
DECLARE c CURSOR FORWARD_ONLY READ_ONLY STATIC
FOR
SELECT object_name(c.[object_id]) AS tb_name ,c.name AS col_name
FROM sys.[columns] c ,sys.[tables] AS t
WHERE c.[object_id]=t.[object_id]
AND c.name='id'
OPEN c
FETCH NEXT FROM c INTO @tb_name, @col_name
WHILE @@fetch_status = 0
BEGIN
SET @sql = 'delete from '+ @tb_name +' where uchar<'''+LTRIM(@uchar)+''''
EXEC(@sql)
FETCH NEXT FROM c INTO @tb_name, @tb_name
END
CLOSE c
DEALLOCATE c