SQL BULK INSERT с созданием таблицы на лету

Я хотел бы использовать BULK INSERT для загрузки нескольких сотен таблиц необработанных данных в SQL Server. Формат этих таблиц будет аналогичным, но не идентичным (они взяты из таблиц Excel, которые не контролируются версиями).

Я хочу знать, есть ли способ динамически генерировать таблицу, требуемую на SQL Server, в зависимости от заголовков загружаемого файла, а затем выполнить BULK INSERT после этого.

2 ответа

Решение

Вы можете подключиться к этим таблицам Excel, используя OPEN ROWSET. Затем сделайте следующее:

SELECT *
FROM Excel
INTO NewTable
WHERE 0=1

Это перенесет схему. Это то, что вы хотите?

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

Другие вопросы по тегам