问题:假设我有100个数据库,第个库有50张表,每个库都有表损坏,但不能修复;如果要把这100个库转移到另一台服务器上,并且只能用远程插入数据的方式来进行,怎么样才能实现!
select * into a from b 这种方法会执行到坏表的时候就会断掉,如果批量生成插入语句,加上打印,可以看到执行到哪一张表,
但这样只能一个个库来弄,还得一张张坏表来排除;下面是我想到的方法:但不知道能不能实现,或又应该怎么实现:
如果我把批量生成的每条插入语句都做一个时间判断(这个时间可以做到大于插入表所需的时间而且小于执行坏表检查到中断的时间,即:时间可以做到合理),若执行时间超过设定的时间,则中断这个语句(即跳过了坏表的断气插入),继续执行下一条语句,直到把所有好的表插过去!
------解决方案--------------------
加 try, 是否就不会中断了?!
BEGIN TRY
select * into a from b
END TRY
BEGIN CATCH
print '表b有错误'
END CATCH
GO