作为归档过程的一部分,我正在将记录从一个数据库移动到另一个数据库。我想将这些行复制到目标表,然后从源表中删除相同的行。
我的问题是,在删除行之前检查第一个插入是否成功的最有效方法是什么?
我的想法是这样,但是我觉得有更好的方法:
@num_records=select count(ID) from Source_Table where (criteria for eligible rows)
insert * into Destination_Table where (criteria for eligible rows)
if ((select count(ID) from Destination_Table where (criteria) )=@numrecords)
delete * from Source_Table where (criteria)
将它与RAISERROR函数结合起来更好/可行吗?谢谢!