Добрый день.
Есть потребность вставить очень большое число строк в БД. В связи с этим два вопроса.
Какое количество строк целесообразно вставлять за один запрос?
Есть ли для вставки больших массивов данных в БД способ лучше, чем делать большое число INSERT-запросов?
Ответ
я бы в данном случае воспользовался BCP (Bulk Copy Program), который был специально разработан для загрузки большого объема данных в MS SQL Server
Пример:
bcp WorlWideImporters.Warehouse.StockItemTransactions OUT D:\BCP\StockItemTransactions_native.bcp -m 1 -b 10000 -n -e D:\BCP\Error_out.log -o D:\BCP\Output_out.log -S -T
Если вам надо делать это программным путем воспользуйтесь BULK INSERT (Transact-SQL)
Пример:
BULK INSERT AdventureWorks2012.Sales.SalesOrderDetail
FROM 'f:\orders\lineitem.tbl'
WITH
(
FIELDTERMINATOR =' |',
ROWTERMINATOR =' |
'
);
По ссылкам можно найти больше примеров использования...
Комментариев нет:
Отправить комментарий