Пакетная вставка из Excel в SQL Server - PullRequest
3 голосов
/ 06 января 2012

Есть ли способ сделать пакетное обновление на SQL Server из строки данных в Excel?У нас есть документы Excel, которые содержат более 2000 строк и должны быть импортированы в SQL Server.Есть ли способ сделать пакетную вставку этих парней, не вызывая базу данных снова и снова, чтобы вставлять по одной строке за раз?

Ответы [ 3 ]

7 голосов
/ 06 января 2012

SQL Server Integrations Services предлагает импорт на основе мастера, который может помочь вам легко настроить пакет для импорта файла Excel. Вы даже можете сохранить пакет и запланировать его повторение импорта в будущем.

У вас есть и другие варианты. Если вы сохраните файл Excel в текстовом файле с запятой или табуляцией, вы можете использовать команду BULK INSERT t-sql. См. пример на форумах sqlteam.com .

Другой вариант T-SQL - это SELECT INTO. Excel является допустимым источником данных OLEDB или ODBC из T-SQL. Вот пример .

В Microsoft SQL Server также имеется инструмент для импорта из командной строки, который называется BCP. Хорошую документацию по BCP и другим опциям можно найти в MSDN по адресу: http://msdn.microsoft.com/en-us/library/ms187042.aspx

1 голос
/ 06 января 2012

Вы можете создать пакет служб SSIS для чтения файла Excel. Когда вы создаете свою задачу, вы можете выбрать тип подключения «Excel», а затем он поможет вам создать «Диспетчер подключений Excel». Затем вы можете легко отправить данные в таблицу SQL Server. Вот руководство по , как импортировать файл Excel в SQL Server (2005). Посмотри.

1 голос
/ 06 января 2012

Да! Используйте мастер импорта / экспорта SSMS! Используйте источник Excel и место назначения SQL Server. Вы также можете создать пакет SSIS в BIDS или использовать инструкцию BULK INSERT из T-SQL, если преобразуете свои Excel-листы в CSV-файлы.

...