Мне нужно выполнить большую работу по вставке, скажем, 300000 вставок.
Если я сделаю это устаревшим способом, я просто пишу строку SQL с блоками из 100 операторов Insert и выполняю команду executeCommand для БД (каждые 100 записей).
Это дает около 100 вставок за 3 секунды или около того.
Теперь, конечно, есть проблема с одинарными кавычками и CrLf внутри вставленных значений. Поэтому вместо того, чтобы писать код для удвоения одинарных кавычек и т. д., поскольку я ленив, я использую Linq InsertOnSubmit и один контекст. SublitChanges друг друга 100 строк.
И это занимает в 20 раз больше времени, чем устаревший способ!!!
Почему?
SqlBulkCopy
и т. д.) для таких ситуаций. - person marc_s   schedule 27.01.2011