假设你要处理的表名是: pludetail
*********/
create procedure distinct_deal
as
begin
begin transaction
select distinct * into #tempdel from pludetail --提取无重复的记录到临时表中
truncate table pludetail --清掉原表
insert pludetail
select * from #tempdel --把临时表中无重复的数据插回原表
drop table #tempdel
if @@error<>0
begin
raiserror('数据处理失败!',16,-1)
goto error_deal
end
commit transaction
return
error_deal:
rollback transaction
return
end
/**
要实现以上过程在指定时间内执行
可以用数据库的管理中的作业作实现,很简单,这里不详述了
希望这个方法对你有用
**/
什么数据库的?出现重复有可能是几种情况
1、你insert语句中本身数据就不对,有重复值。
2、如果执行多次,应该是前几次数据没清理掉。
这个要具体看代码,凭你一个题目无法判断是什么情况
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)