ich möchte gerne eine Textdatei in den SQL Server importieren. Dafür habe eine Tabelle mit NVARCHAR, INT und FLOAT Feldern angelegt.
Außerdem habe ich eine XML Datei in welcher die einzelnen Spalten definiert sind.
Über einen Bulk Insert lade ich die Daten dann entsprechend in die Tabelle.
SELECT FIELD1,FIELD2,FIELD3,FIELD4,FIELD5 FROM
openrowset (bulk ‚W:\DATA.TXT‘,
FORMATFILE=‚W:\XML\DATA.TXT.XML‘, MAXERRORS=10000000,
CODEPAGE=‚1250‘) as test
Wenn die Datei eine UTF-8 Datei ist, kann ich diese Datei dann durch die Angabe der Codepage importieren?
Welche Codepage müsste ich denn dafür nehmen?
Habe etwas von 65001 gelesen aber diese funktioniert irgendwie gar nicht.
Mein Problem ist, dass ich oft entweder Textdateien im DOS Format oder U-8 DOS Format geliefert bekomme. Diese müsste ich dann erst manuell oder durch eine weitere Software konvertieren wodurch ich unter unter Umständen die Unicode-Fähigkeit verliere.
ich möchte gerne eine Textdatei in den SQL Server importieren.
Dafür habe eine Tabelle mit NVARCHAR, INT und FLOAT Feldern
angelegt.
Außerdem habe ich eine XML Datei in welcher die einzelnen
Spalten definiert sind.
Über einen Bulk Insert lade ich die Daten dann entsprechend in
die Tabelle.
SELECT FIELD1,FIELD2,FIELD3,FIELD4,FIELD5 FROM
openrowset (bulk ‚W:\DATA.TXT‘,
FORMATFILE=‚W:\XML\DATA.TXT.XML‘, MAXERRORS=10000000,
CODEPAGE=‚1250‘) as test
Wenn die Datei eine UTF-8 Datei ist, kann ich diese Datei dann
durch die Angabe der Codepage importieren?
Welche Codepage müsste ich denn dafür nehmen?
Habe etwas von 65001 gelesen aber diese funktioniert irgendwie
gar nicht.
Mein Problem ist, dass ich oft entweder Textdateien im DOS
Format oder U-8 DOS Format geliefert bekomme. Diese müsste ich
dann erst manuell oder durch eine weitere Software
konvertieren wodurch ich unter unter Umständen die
Unicode-Fähigkeit verliere.
ich bin mir nicht sicher, ob ich dir weiterhelfen kann, da ich „meine“ Bulk-Inserts noch immer über eine Text - Formatdatei steuere.
Als Codepage gebe ich immer CODEPAGE = ‚1252‘ an
aber abhängig davon, ob es sich um Unicode handelt, verwende ich eine andere Formatdatei mit den folgenden Änderungen:
Folgende Anpassungen müssen in den Formatdateien zum Einlesen von Daten in UNICODE vorgenommen werden:
Hallo olli,
habe in der Richtung noch nie etwas gemacht (da ich Programmierer bin schreibe ich mir bei Bedarf etwas selbst , das ist in ein paar Minuten erledigt). Habe aber auf der Seite http://msdn.microsoft.com/de-de/library/ms188365.aspx kurz nachgelesen und einige interessante Infos gefunden. Z.B. dass Pagecode 65001 vom SQL-Server offenbar nicht unterstützt wird. Ansonsten würde ich das „übliche“ Spiel machen: try and Error - sprich austesten und die Fehlermeldungen bzw. das Ergebnis analysieren. Vermutlich wird es sowieso schwierig wenn du unterschiedliche Formate erhältst.