softbear 发表于 2013-1-30 00:15:48

sybase高效地删除大数据量记录

 
create procedure sp_delete_records    @ld_day numeric(10) = -30      as      declare         @max_time datetimesetrowcount 1000select @max_time = dateadd(dd,@ld_day,convert(datetime,convert(varchar,getdate(),111)))select 1while(@@rowcount>0)             begin             dump tran YOUR_DATABASE with truncate_only             delete from YOUR_TABLE where lasttime < @max_time               endsetrowcount 0return 
以上为存储过程
原理:使用循环,每次删除最多1000条记录,然后清除log,直到所有记录都删除
页: [1]
查看完整版本: sybase高效地删除大数据量记录