Frage

Verfügt jemand über eine Technik zum pragmatischen Generieren von Befehlen zum Erstellen von SQL-Tabellen (und zum Einfügen von Daten) aus einer CSV-Datei (oder einem Blatt in einer XLS-Datei)?

Ich habe ein Datenbanksystem eines Drittanbieters, das ich mit Daten aus einer CSV-Datei (oder einem Blatt in einer XLS-Datei) füllen möchte, aber der mitgelieferte Importer kann die Tabellenstruktur beim Import nicht automatisch erstellen.Meine CSV-Datei enthält viele Tabellen mit vielen Spalten, daher würde ich den Tabellenerstellungsprozess und den Datenimport nach Möglichkeit gerne automatisieren, bin mir aber nicht sicher, wie ich die Erstellungsanweisung generieren soll ...

War es hilfreich?

Lösung

In SQL Server ist es so einfach wie

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

Andere Tipps

Ich empfehle einen Blick darauf csvkit.Es ist csvsql Die Funktion kann Tabelleneinfügeanweisungen aus den meisten tabellarischen Datenquellen generieren oder diese sogar für Sie ausführen.

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

Leider verwende ich eine SQLEngine für eingebettete Systeme, sodass diese keine BULK INSERT- oder OLEDB-Datenquellen unterstützt, weshalb ich darüber nachgedacht habe, den Ansatz zur Generierung von SQL-Anweisungen zu wählen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top