Какой из способов является хорошим для импорта Excel в базу данных? - PullRequest
0 голосов
/ 24 октября 2011

Привет, я использую SQL Server 2008.

Как я могу импортировать файл Excel в базу данных, что является самым простым и простым способом сделать?

  1. OpenRowSet
  2. BulkCopy
  3. Связанные серверы
  4. SSIS

У меня есть вышеупомянутые опции для импорта Excel в базу данных.

Ответы [ 2 ]

2 голосов
/ 24 октября 2011

Если данные в вашем файле Excel не требуют какой-либо обработки для соответствия таблице базы данных, тогда я рекомендую сохранить файл Excel в формате csv и использовать комбинацию BULK INSERT и программы BCP.exe.

Чтобы использовать BULK INSERT, вам понадобится файл формата, который определяет, как ваш файл данных соответствует вашей таблице базы данных.Вы можете написать это вручную, чтобы соответствовать существующей таблице базы данных, или вы можете использовать следующую команду для генерации необходимого вам файла формата:

bcp [ServerName].[SchemaName].[TableName] format nul -c -f [FormatFileOutputName].fmt -S[ServerHostName] -U[DbUserName] -P[DbUserPassword]

Теперь у вас будет 2 файла:

  • DatafileName.csv
  • FormatFileName.fmt.

Используйте BULK INSERT в Sql Server для вставки ваших данных.

Примечание. Если столбцы в вашем файле данных находятся в другом порядке, чем таблица базы данных, вы можете просто отредактировать сгенерированныйотформатируйте файл, чтобы они правильно отображались.

2 голосов
/ 24 октября 2011

По моему мнению, мастер служб SSIS - это лучший способ импортировать данные Excel, где вы получаете полное и табличное представление всех данных таблицы, которые будут вставлены, а также задаете имена столбцов и ограничения и анализируете данные с помощью запроса.

ОБНОВЛЕНИЕ:

enter image description here

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