Каков наилучший способ загрузить файл CSV в таблицу MS SQL? - PullRequest
0 голосов
/ 27 сентября 2011

Несколько подходов:

  1. Использование SQL Bulk Import Stored Proc и вызов хранимого процесса с путем к файлу
  2. Использование SqlBulkCopy в System.Data.SqlClient dll
  3. Прочитайте файл построчно, а затем вставьте в таблицу строку за строкой
  4. Есть ли другие способы?

Какой из них лучше?Я просто хочу, чтобы пользователь выбрал файл на веб-странице asp.net.А затем нажмите кнопку Загрузить, чтобы сохранить файл в БД.

Во-вторых, нужно ли перемещать файл в памяти сервера, прежде чем файл будет скопирован в таблицу базы данных?

1 Ответ

0 голосов
/ 27 сентября 2011
  1. БД не будет знать о файле, потому что все должно быть отделено и наслоено.Сохранение файла в каком-либо общедоступном месте добавляет накладные расходы и приводит в порядок и т. Д.

  2. Да

  3. Конечно, вы хотите, чтобы это была атомарная операция.10 тыс. Строк - это 10 циклов с выполнением транзакции на стороне клиента.Если не атомарное, то вам понадобятся промежуточные таблицы и прибавки

  4. Анализ в c #, отправка в БД с табличным параметром .В противном случае, вероятно, ничего такого же и / или реалистичного ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...