![]() |
Datenbank: firebird • Version: 1.5 • Zugriff über: IBO
firebird upper('ü')
Weiß jemand wie man Firebird dazu zwingen kann, dass ein Upper von Strings auch mit Umlauten funktioniert?
Folgendes Statement wandelt den String nicht in Großbuchstaben um
SQL-Code:
Der gleiche Effekt hat man leider auch bei :parameter
select upper('ü') from rdb$database
|
Re: firebird upper('ü')
Hallo DelphiDeveloper!
Das UPPER aus dem Firebird kann man dazu leider gar nicht bewegen. Du kannst Dir dazu allerdings eine UDF bauen, die z. B. auf AnsiUpperCase basiert. Damit wärs dann möglich. Gruß Thomas |
Re: firebird upper('ü')
nix udf...
das geht auf jeden fall! du musst das feld collaten... hier beispiele: felder sollten dann so definiert werden:
SQL-Code:
insert:
(...)
KND_STRASSE VARCHAR(50) CHARACTER SET WIN1252, (...)
SQL-Code:
select:
INSERT INTO KUNDEN (KND_STRASSE) VALUES( ' _win1252 '''+edkndName.Text+''')
SQL-Code:
'SELECT * FROM KUNDEN WHERE UPPER(KND_STRASSE COLLATE PXW_INTL850) LIKE UPPER(
_win1252 ''%'+edKndSuch.text+'%'' COLLATE PXW_INTL850) hoffe das klappt auch bei dir. gruß |
Re: firebird upper('ü')
Zitat:
geht das nun auf jeden Fall oder nur mit der entsprechenden Collation .... Ich stimme Dir zu, daß es Collations gibt, in denen zu den Umlauten auch ihre Upper-Übersetzungen vorhanden sind. Werden diese bei Tabellenanlage und/oder Dateneingabe nicht verwendet, so funktioniert das UPPER dann leider wieder nicht. Daher meine Empfehlung der UDF. Das dürfte immer funktionieren und ist auch ohne großen Aufwand in bereits bestehende Datenbanken einzubauen. Gruß Thomas |
Re: firebird upper('ü')
Danke für den Tip mit collate
SQL-Code:
bringt mir das geünschte Ergebnis
select upper('ü' COLLATE DE_DE) from rdb$database
|
Re: firebird upper('ü')
hi onlinekater,
hast du ein paar quellen für diese udfs? würde mir das gerne mal genauer anschauen. :-) gruß |
Re: firebird upper('ü')
Guck mal hier :
![]() In Grundzügen steht da drin, was zu tun ist. Sofern man beabsichtigt, das selber durchzuziehen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:42 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz