[NEWSboard IBMi Forum]
  1. #1
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.005

    SQL und Umlaute

    Hallo,

    ich versuche gerade per SQL in einem Textfeld nach Umlauten zu suchen. Ich hab es sowohl mit LIKE als auch mit LOCATE versucht. Jedoch erhalte ich z.B. bei der Suche nach "ü" auch alle Ergebnisse, die nur ein "u" enthalten.
    Wie kann ich denn gezielt nach Umlauten suchen?

    Vielen Dank,
    KM

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Da steht dann die Sortierung auf SRTSEQ=*LANGIDSHR, so dass hier eine Bewertung nach Sprache stattfindet.
    Diese Einstellung ist Sitzungsbezogen.
    Wenn du eine Binärsuche benötigst musst du eine eigene ACTGRP verwenden und SRTSEQ=*HEX verwenden. Ggf., das habe ich noch nicht ausprobiert, reicht das auch für ein separates Modul.
    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
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.005
    Mit der Treibereigenschaft sort=hex hat es nun funktioniert.

    Vielen Dank,
    KM

  4. #4
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    where hex(replace(name, 'ü', 'u')) <> hex(name)
    sollte unabhängig von sort gehen

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  5. #5
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.005
    nicht ganz, denn es werden auch Sätze gefunden bei denen ein großes "U" vorkommt.

    Gruß,
    KM

  6. #6
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    ... ich kann zwar die krude Logik von replace nicht nachvollziehen, aber das kann man ihm noch mit
    where hex(translate(name, 'uU', 'üÜ')) <> hex(name)
    abgewöhnen.

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  7. #7
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.005
    Ja, damit funktioniert es nun.

    Danke,
    KM

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Bedingt. Ein HEX(Inhalt) liefert die Hexdarstellung des Inhalts.
    Der Locate mit HEX kann allerdings auch die falsche Position (Vorkommen) liefern, da der zu suchende Wert über 2 Halbbytes vorkommen kann. Je mehr Zeichen verwendet werden desto geringer die Wahrscheinlichkeit.
    Ggf. bringt dann wiederum ein "cast(Name as binary(xx))" bzw. "cast( name as char(nn) ccsid 65535)" was, da hier keinesfalls LANGID verwendet wird.
    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

  9. #9
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Bedingt. Ein HEX(Inhalt) liefert die Hexdarstellung des Inhalts.
    Der Locate mit HEX kann allerdings auch die falsche Position (Vorkommen) liefern, da der zu suchende Wert über 2 Halbbytes vorkommen kann.
    ... das ändert den Wahrheitsgehlt nicht! Der translate erfolgt über character und anschließend werden komplette Strings verglichen, das hex hat hier nur den Sinn dem Vergleich die Flausen abzugewöhnen.

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Ich bezog mich ja auch auf den Locate, der einen String durchsucht.
    Für Komplettvergleiche gebe ich dir uneingeschränkt Recht.
    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

Similar Threads

  1. Umlaute per FTP von IBM 4690
    By Flappes in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 28-01-14, 15:29
  2. SNDDST und falsche Umlaute
    By holly in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 06-06-03, 11:03
  3. Umlaute im AS/400 Menue
    By TARASIK in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 18-03-03, 07:28
  4. FTP: PC -> AS/400; Umlaute
    By Atomik in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 28-01-03, 10:40
  5. Umlaute bei ODBC-Verbindung
    By pbecker in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 21-12-01, 10:46

Berechtigungen

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