SqlBulkCopy中的错误处理



我正试图找到一种方法,使用SqlBulkCopy对MSSQLServer表执行大容量插入,该方法将在出现错误时继续执行,并返回无法插入的任何行的数据表。

当我尝试使用SqlBulkCopy时,由于事务性,整个操作失败并回滚。

目前,我倾向于使用循环来迭代数据表的行,并对每一行执行插入,但如果可能的话,我更喜欢使用SqlBulkCopy方法来与类中的其他操作保持一致。

是否可以指示SqlBulkCopy以非事务性的方式运行,或者我最好只使用循环和单个插入?

我想这个问题已经回答过很多次了。基本思想是要么只插入有效数据,要么在没有可能失败的约束的情况下插入到临时表中。然后,您可以将正确的行insert...select转移到真正的目标表。

最新更新