Или другой вариант, если ваша практика безопасности допускает прямую вставку таблицы.
Insert into insertTable with (tablock) (Col1, Col2)
values ('1a', '2a), ('1b','2b')
Вы можете иметь до 1000 значений.Я часто это делаю, и это самая быстрая для необработанных вставок, которые я обнаружил (кроме bcp, но внутри ASP с живой базой данных, которая является грязной).
Если insertTable имеет PK, сортируйте значенияПК для минимизации разделения таблицы.Если в данных имеются большие пробелы, это не сильно поможет, но не может повредить.Для начальной загрузки сортировка на PK огромна.
Поддерживайте индексы на insertTable и оставляйте соответствующий коэффициент заполнения.
С помощью (tablock) повлияет на других пользователей, но я обнаружил, что для предела в 1000 и менее вы настолько быстро, что это оптимально.
Мне также нравится ответ TVP от Одеда.Сортировка и ведение индексов также должны помочь TVP.