[sql server ]insert into A表 select --from B表 的问题
现在想写一个存储过程:
A,B 表数据结构大致相同
实现
将B表中满足某些条件的 记录,先写入A表,并且,将这些记录从B表中删除
insert into tab_a select ---from tab_b where 条件 (1)
delete from tab_a where 条件 (2)
问题:
如果在进行写入操作时,某条记录写入A表 出现问题,整个执行就会中断。这时候已有部分数据写入A表,但尚未执行从B表删除的操作。
为了避免,出现部分记录写入A表,但没有从B表中删除的情况,可以在存储过程中,放个回滚。
可是这样有些浪费资源,因为A,B表 是大数据表,每次执行存储过程操作大量数据。如果因为一,两条记录出现问题,就要放弃操作,并回滚之前所有操作,很冤枉---请问:有没有其他办法呢----