Announcement

Collapse
No announcement yet.

Oracle, BDE - Locate, Sortieren und Suchen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Oracle, BDE - Locate, Sortieren und Suchen

    Hallo!

    Habe ein Problem mit Locate unter Oracle!

    Aufgrund der Einstellungen in INIT.ORA:<BR>
    NLS_SORT=GERMAN<BR>
    NLS_COMP=ANSI<BR>
    werden Zeichenfelder mit Umlauten und Zahlen richtig gereiht.

    Nur stehen dadurch Zeichenfolgen mit führenden Ziffern am Ende einer Auflistung.<BR>
    ZB: select Feld1 from Tabelle order by Feld1<BR>
    Feld1<BR>
    -------<BR>
    ABC<BR>
    BAR<BR>
    BÄR<BR>
    BAUER<BR>
    3 ZR<BR>
    5 C<BR>

    Bei einem Locate nach '3 Z' mit [loPartialKey] (unter Delphi/BDE) wird der vorhandene Datensatz '3 ZR' nicht gefunden, während ein Locate nach einen der anderen Feldinhalte ('A', 'AB','BA','BAUER', ...) immer funktioniert.

    Ich denke dies hängt mit der Reihung NLS_SORT=GERMAN zusammen, die Zeichenfolgen mit führenden Zahlen hinter Zeichenfolgen mit führenden Buchstaben und nicht davor reiht, während Locate diese davor erwartet?!

    Hat jemand eine Lösung oder ein ähnliches Problem?

    In diesem Modul ist der Einsatz von Locate sehr wichtig, Workarround mit Select ... daher nur schlechte Alternative!

    Weiß jemand wie ich trotz korrekter Reihung der Umlaute, Ziffern vor Buchstaben reihen kann, bzw. die BDE/Locate dazu bewegen kann Datensätze mit führenden Ziffern zu finden?

    Dank im Vorraus<BR>
    Helmut
Working...
X