CSV (oder Blatt in XLS) zu SQL-Anweisungen mit .Net erstellen (und einfügen)?
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 ...
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
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.