Skip to main content

Sonderzeichen Oracle DB

Comments

4 comments

  • Zendesk API User
    Author: plaga - 10/9/2020 13:18

    Im Rahmen der Einführungsphase für die Oracle-Database-19c-Unterstützung bin ich ab und zu hier in der Community und stolperte deswegen über deine Frage, Matthias. Meine Antwort, die mit einem datenbank-erfahrenen Kollegen abgestimmt ist:

    Die angegebene Datenbank-Konfiguration entspricht nicht der e-Spirit-Empfehlung. In unserer Dokumentation (1) steht:

    Unicode: Bei der Installation einer Oracle-Datenbank sollte die UNICODE-Unterstützung aktiviert werden, um alle internationalen Zeichen darstellen zu können. Beim Anlegen der Oracle-Instanz müssen dazu beim Create-Database-Statement die folgenden Parameter gesetzt werden:

    NLS_CHARACTERSET: AL32UTF8

    NLS_NCHAR_CHARACTERSET: AL16UTF16

    Der verwendete NLS_CHARACTERSET "WE8ISO8859P1" ist ein Acht-Bit-Zeichensatz und er wird unvermeidlich manche Zeichen nicht darstellen können.

    Eventuell könnte es helfen, auf Oracle Database 19c zu wechseln und diese im NVARCHAR2-Layer-Modus zu betreiben. Mögliche Konfigurationen wären dann:

    jdbc.oracle.CHARACTERSET=AL16UTF16

    jdbc.MAXSTRINGLENGTH=2000

    oder EXTENDED

    jdbc.oracle.CHARACTERSET=AL16UTF16

    jdbc.MAXSTRINGLENGTH=16383

    Siehe unsere Dokumentation​ (2) mit kurzen Erläuterungen zu NVARCHAR2 im Oracle19c-Layer.

    0
  • Zendesk API User
    Author: MKloss - 10/15/2020 12:41

    Entschuldige die späte Rückmeldung, vielen Dank schon mal für die Antwort.

    VARCHAR2 kann bei "WE8ISO8859P1" das Sonderzeichen nicht speichern, das ist korrekt.

    Was ich aber nicht verstehe, über FS werden die Felder als NVARCHAR2 angelegt, welche AL16UTF16 verwenden.

    NVARCHAR2 kann die Sonderzeichen auch Speichern und FS kann diese dann auch Anzeigen, nur das Zurückschreiben von FS funktioniert nicht.

    Ist das dann nicht eher eine falsche Einstellung im Client?

    Oracle 19c ist leider momentan noch keine Option für uns.

    0
  • Zendesk API User
    Author: plaga - 10/19/2020 11:53

    Leider kann ich nur versuchen, bei der Oracle19c-Einführungsphase zu unterstützen. Ist eine Umstellung darauf keine Option, so kann ich nur an den e-Spirit Technical Support verweisen.

    0
  • Zendesk API User
    Author: MKloss - 10/26/2020 10:16

    Wir haben jetzt ein Schema in einer anderen Oracle-DB von uns bekommen.

    NLS_CHARACTERSET                   WE8MSWIN1252

    NLS_NCHAR_CHARACTERSET     AL16UTF16

    Hier klappt es jetzt mit den Sonderzeichen, zumindestens mit denen die wir bisher benötigen.

    Sollten wir nächstes Jahr auf Oracle 19c umsteigen, komme ich vielleicht auf deine Unterstützung zurück. :-)

    0

Please sign in to leave a comment.