我在一个SubmitChanges()
调用中插入表1000行更快,我必须在此表中添加数TB的行。
其中一个将成功插入其他将在插入时返回异常。 如何计算我们有多少例外以及如何捕获它们对每一行都是独占的?
答案 0 :(得分:1)
嗯,不幸的是linq2sql完全不适合批量插入。它很慢,所以你真的想看一个不同的解决方案。您可以在插入之前验证所有记录,然后使用sqlbulkcopy进行非常快速的插入。
答案 1 :(得分:0)
如果它在SubmitChanges()
投掷,那么你可以做的并不多。将其包装在try-catch
中以至少获取一些例外。或者,如果您确实需要知道逐行异常,则必须单独插入它们。