CSV (или sheet в XLS) для SQL создает (и вставляет) инструкции с помощью .Net?

StackOverflow https://stackoverflow.com/questions/22935

  •  09-06-2019
  •  | 
  •  

Вопрос

Есть ли у кого-нибудь метод для прагматической генерации команд создания таблицы SQL (и вставки данных) из CSV-файла (или листа в формате .xls)?

У меня есть сторонняя система баз данных, которую я хотел бы заполнить данными из csv-файла (или листа в xls-файле), но предоставленный импортер не может автоматически создавать структуру таблицы при выполнении импорта.В моем CSV-файле много таблиц с большим количеством столбцов, поэтому я хотел бы автоматизировать процесс создания таблицы, а также импорт данных, если это возможно, но я не уверен в том, как сгенерировать инструкцию create...

Это было полезно?

Решение

В SQL server это так же просто, как

SELECT * INTO NewTablenNmeHere
FROM OPENROWSET( 'Microsoft.Jet.OLEDB.4.0', 
'Excel 8.0;Database=C:\testing.xls','SELECT * FROM [Sheet1$]') 

Другие советы

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

BULK 
INSERT CSVTest
        FROM 'c:\csvtest.txt'
            WITH
    (
                FIELDTERMINATOR = ',',
                ROWTERMINATOR = '\n'
    )

К сожалению, я использую SQLEngine для встраиваемых систем, поэтому он не поддерживает источники данных BULK INSERT или OLEDB, поэтому я подумал о том, чтобы использовать подход генерации инструкций sql.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top