Hallo,
wir haben das Problem eine Pfadangabe an Hand der backslash zu trennen und in Spalten einzulesen.
Ein Beispiel: c:\test\test123\daten soll nachher in drei Spalten zu finden sein und er Feld Delimiter ist der "\".
c: test test123 wäre sozusagen das gewünschte Ergebnis in den Spalten.
Leider interpretiert Oracle den backslash und benutzt ihn nicht als Trennzeichen
Hat jemand eine Lösung wie man den "\" maskieren muss ?
Konkret benutzen wir folgendes auf unsere Zwecke modifiziertes Script, allerdings wird hier eine Excel Datei benutzt, in der die Delimiter beim Export ja angegeben werden können:
CREATE TABLE Tabellenname
( <Felddefinitionen> )
ORGANIZATION external (
TYPE oracle_loader
DEFAULT DIRECTORY MEINDIRECTORY
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET <Zeichensatz>
-- BADFILE log_file_dir:'sh_sales.bad_xt'
-- LOGFILE log_file_dir:'sh_sales.log_xt'
FIELDS TERMINATED BY "\" -- das ist die Zeile um die es geht
OPTIONALLY ENCLOSED BY '"' AND '"'
LDRTRIM
)
LOCATION ('<Dateiname>')
)
REJECT LIMIT UNLIMITED;
wir haben das Problem eine Pfadangabe an Hand der backslash zu trennen und in Spalten einzulesen.
Ein Beispiel: c:\test\test123\daten soll nachher in drei Spalten zu finden sein und er Feld Delimiter ist der "\".
c: test test123 wäre sozusagen das gewünschte Ergebnis in den Spalten.
Leider interpretiert Oracle den backslash und benutzt ihn nicht als Trennzeichen
Hat jemand eine Lösung wie man den "\" maskieren muss ?
Konkret benutzen wir folgendes auf unsere Zwecke modifiziertes Script, allerdings wird hier eine Excel Datei benutzt, in der die Delimiter beim Export ja angegeben werden können:
CREATE TABLE Tabellenname
( <Felddefinitionen> )
ORGANIZATION external (
TYPE oracle_loader
DEFAULT DIRECTORY MEINDIRECTORY
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET <Zeichensatz>
-- BADFILE log_file_dir:'sh_sales.bad_xt'
-- LOGFILE log_file_dir:'sh_sales.log_xt'
FIELDS TERMINATED BY "\" -- das ist die Zeile um die es geht
OPTIONALLY ENCLOSED BY '"' AND '"'
LDRTRIM
)
LOCATION ('<Dateiname>')
)
REJECT LIMIT UNLIMITED;
Comment