[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2005
    Beiträge
    98

    Umlaute ODBC auf Linux

    Ich bin am Verzeifeln. Ich habe Probleme mit Umlauten unter Linux mit dem ODBC Treiber.

    z.B.: Rückg. an Lieferran.. und dann kommen ganz viele Zeichen die auch noch von Aufruf zu Aufruf wechseln.

    Da das aber schonmal funktioniert hat verstehe ich die Welt nicht mehr.
    Die Dateien auf der iSeries haben CCSID 273.
    Auf der Linux Maschine hab ich jetzt schon einiges durch aber ohne Erfolg:
    CCSID in der ODBC.ini umzustellen macht alles SEHR VIEL schlimmer.
    LC_CTYPE de_DE.UTF-8

    LC_CTYPE de_DE.UTF-8


    LC_CTYPE=de_DE.UTF-8
    LC_ALL=de_DE.UTF-8
    LANG=de_DE

    In /var/lib/apache2/.iSeriesAccess/cwb_userprefs.ini

    [CWB_CURRUSER\Software\IBM\Client Access Express\CurrentVersion\NLS]
    CCSID-CODESET=attr_str:273,x
    x hab ich probiert mit1208,ISO_8859.1,UTF-8,UNICODE und diversen anderen Dingen die alle nix gebracht haben.

    Jemand ne Idee was ich übesehe?

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Ich weiß zwar nicht, wie du die Daten auf Linux empfängst, aber so wie du sie darstellst, erhältst du die Zeichen bereits in UTF-8 dekodiert.
    Sonderzeichen sind dann meist 2 Bytes lang, es ist also korrekt.
    (ü = "ü")

    Du musst also nur noch von UTF-8 wieder in deine aktuelle Codepage umkodieren.
    Es muss da für deine Programmiersprache entsprechende Routinen geben (ggf. Java?).

    Was die "vielen anderen Zeichen" angeht, so könnte es sein, dass der Inhalt deiner Variablen vor dem ODBC-Zugriff immer gelöscht werden muss. Es scheint ein Rest stehenzubleiben.

    Der Sourcecode wäre nicht uninteressant.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Jun 2005
    Beiträge
    98
    Der macht das auch wenn ich das direkt über isql aufrufe.
    So wie ich das verstehe sollte er dann schon verstehen das er das UTF-8 zur Anzeige konvertieren muss, oder?

    Ansonsten nutze ich PHP, da sollte das eigentlich mit utf8decode gehen, da kommt aber dann mal grad gar nix raus.

  4. #4
    Registriert seit
    Jun 2005
    Beiträge
    98
    HALT, iconv mit Parametern was in PHP, damit geht es.

    Jetzt will ich aber nicht alles anpassen müssen (oder muss ich?)

    Kann man das nicht irgendwo "fest" einstellen?

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Vielleicht klappt ja eine Einstellung
    LC_CTYPE=de_DE
    also ohne UTF-8.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  6. #6
    Registriert seit
    Jun 2005
    Beiträge
    98
    Okay, hab jetzt LC_CTYPE=de_DE.ISO8859.1 gemacht und dann geht es.

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    ISO8859-1 entspricht ja auch dem ANSI-Standard.
    Herzlichen Glückwunsch.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  8. #8
    Registriert seit
    Jun 2005
    Beiträge
    98
    Mir fehlt definitiv jemand mit dem ich mal bei ner Zigarette über sowas diskutieren kann (da ich nicht mehr Rauche ist das auch besser so).

    Danke für den Reflektor Dienst!

  9. #9
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Ich lass mir das Rauchen auch nicht nehmen !
    Bitte, gerne geschehen.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  10. #10
    Registriert seit
    Jun 2005
    Beiträge
    98
    So, muss das doch nochmal vorholen, weil ich jetzt irgendwie das umgekehrte Problem habe.

    Der Linux Server läuft komplett unter UTF-8.

    Von der AS/400 kommen die Daten aber in ISO8859-1, das möchte ich aber auch gerne nach UTF-8 umstellen. Wie?

    CCSID in der odbc.ini steht auf 1208 LC_CTYPE auf de_DE.UTF-8, was kann ich sonst noch tun?

  11. #11
    Registriert seit
    Jun 2005
    Beiträge
    98
    Ich geh dann mal ne halbe Stunde meinen Kopf gegen die Wand schlagen.

    Mein Testscript hat gar nicht auf die AS/400 zugegriffen sondern auf ne MySQL Datenbank. Der ODBC Zugriff auf die AS/400 funktioniert prima.

  12. #12
    Registriert seit
    Sep 2005
    Beiträge
    385
    Sowas
    So, muss das doch nochmal vorholen, weil ich jetzt irgendwie das umgekehrte Problem habe.
    kommt von sowas
    Ich geh dann mal ne halbe Stunde meinen Kopf gegen die Wand schlagen.
    Empfehle einen Spaziergang in der frischen Luft, hilft (mir) immer prima!
    Der ILEMax

Similar Threads

  1. Kein Zugriff von Linux auf AS/400 Freigabe?
    By schatte in forum NEWSboard Linux
    Antworten: 12
    Letzter Beitrag: 29-01-08, 15:02
  2. MS Access Zugriff via ODBC auf iSeries Tabellen
    By Rico in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 21-03-05, 10:43
  3. Linux Verzeichniss auf as/400
    By dd3tj in forum NEWSboard Linux
    Antworten: 10
    Letzter Beitrag: 18-08-04, 15:58
  4. Antworten: 2
    Letzter Beitrag: 08-08-02, 12:29
  5. Zugriff MS Access auf AS/400 via ODBC
    By SL in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 22-07-02, 12:54

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •