Hallo zusammen,
ich sitze gerade an einem Java-Projekt, das auf eine Oracle-Datenbank zugreift und Daten in eine
CSV-Datei exportieren soll. (Das Projekt hat jemand anderes geschrieben und dieser jemand arbeitet hier nicht mehr, d.h. ich weiß auch nicht so genau warum manche Dinge jetzt gerade so gemacht wurden.)
Dazu wird ein
XQuery-Objekt aus dem
com.borland.jbuilder.xml.database-Namespace verwendet. Das funktioniert auch soweit. Das Problem ist nur, dass das Format von Datums- und Fließkommawerten der amerikanischen Notation entspricht, d.h. ein Datum kommt im Format
YYYY-MM-DD heraus und die Fließkommazahlen haben einen Punkt als Dezimalzeichen. Da der Kunde die Excel-/
CSV-Datei aber gerne direkt weiterverwenden möchte, muss ich die Formate irgendwie umbiegen.
Ich habe gelesen, dass ich mit
SQL-Code:
ALTER SESSION SET NLS_NUMERIC_CHARACTERS = ',.'
ALTER SESSION SET NLS_DATE_FORMAT='DD.MM.YY'
das Format ändern kann. Allerdings bringt
Code:
java.sql.Statement nls = DBDermatitis.createStatement();
try {
nls.executeUpdate("ALTER SESSION SET NLS_NUMERIC_CHARACTERS = ',.'");
nls.executeUpdate("ALTER SESSION SET NLS_DATE_FORMAT='DD.MM.YY'");
} catch (java.sql.SQLException ex) { System.out.println(ex.getMessage()); return false; }
keine Veränderung.
Ich das Ausführen von
Code:
set NLS_LANG=GERMAN.GERMANY.WE8ISO8859P1
set NLS_NUMERIC_CHARACTERS=,.
in einer Batch-Datei vor dem Starten des Java-Programms hat nicht geholfen.
Hat jemand eine Lösung dafür?
Viele Grüße
Christopher