# CLOB-Daten werden beim Einfügen in die Datenbank geändert?



## LastUnicorn (17. Dez 2010)

Hallo, 

ich hab ein kleines Problem. Undzwar stecke ich in ein CLOB den Inhalt eines beschreibenden Files. Hierbei werden u.A. Daten wie beispielsweise ä mit eingefügt. Beim schreiben des CLOBS werden diese Daten dann in ein umgekehrtes Fragezeichen umgewandelt. 

Der eingestellte Zeichensatz in Oracle ist WE8ISO8859P15. Im Stream wird der Zeichensatz wie folgt angegeben. 

[JAVA=42]
      OutputStream stream = cLob.getAsciiOutputStream();
      OutputStreamWriter out = new OutputStreamWriter(stream, "ISO-8859-15");
[/code]

Bei Oracle 9 hat alles Problemlos funktioniert. Die Datenbank hatte den gleichen Zeichensatz. Erst seit Oracle 10 tritt dieser Fehler auf.


----------



## Gast2 (17. Dez 2010)

LastUnicorn hat gesagt.:


> Hallo,
> 
> ich hab ein kleines Problem. Undzwar stecke ich in ein CLOB den Inhalt eines beschreibenden Files. Hierbei werden u.A. Daten wie beispielsweise ä mit eingefügt. Beim schreiben des CLOBS werden diese Daten dann in ein umgekehrtes Fragezeichen umgewandelt.



Das siehst du wo? Wenn du es wieder mit JAVA ausließt? Oder mi SQL-Developer/Navigator? Hatte mal ein ähnliches Problem mit 10g nach 11g. Da lag es aber nur an meiner Client Software, in der DB war es richtig gespeichert.


----------



## LastUnicorn (17. Dez 2010)

Nein, im SQL-Navigator sehe ich es schon als falsch gespeichert....es liegt also nicht am auslesen sondern am reinschreiben. Kann das mit dem eingestellten Land der Java-VM zu tun haben?


----------



## Gast2 (17. Dez 2010)

Eben was ich sagte... Evtl stellt es nur der SQL Navigator falsch da. Grade im SQL-Navigator ist das so eine Sache. Welche Version hast du da? Noch eine 5er oder schon eine 6er Version?

Ließ es doch mal mit Java wieder aus und guck dir n was dann drinsteht. Oder ruf den DBA deines Vertrauens an und frag was er in dem Feld sieht.


----------



## maki (17. Dez 2010)

> Kann das mit dem eingestellten Land der Java-VM zu tun haben?


Du meinst das eingestellte Land des Betriebsystemes 
Ja, kann, muss aber nicht.
Wo legt deine Anwendung denn die locale bzw. Zeichensatz fest?


----------



## LastUnicorn (17. Dez 2010)

Pardon, ich hatte mich falsch ausgedrückt. Ja, ich meine das Land des Betriebssystems.

Und zum umgekehrten Fragezeichen: Das ist sowohl im SQL-Navigator als auch nach dem Auslesen aus Java heraus zu sehen.


----------

