AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Umlaute anzeigen egal ob Ü oder UE usw.
Thema durchsuchen
Ansicht
Themen-Optionen

Umlaute anzeigen egal ob Ü oder UE usw.

Ein Thema von SKolberg · begonnen am 30. Sep 2005 · letzter Beitrag vom 12. Okt 2005
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
Benutzerbild von SKolberg
SKolberg

Registriert seit: 20. Dez 2004
Ort: Lingen
150 Beiträge
 
Delphi 2009 Professional
 
#1

Umlaute anzeigen egal ob Ü oder UE usw.

  Alt 30. Sep 2005, 10:24
Hi,

Ich habe ein TEdit als Suchfeld in welches der Teil,-Artikelname eingegeben wird und dann die gefundenen Datensätze in einem DBGrid anzeigt. In der DB sind Daten mal mit UE oder mal mit Ü geschrieben, wie kann ich es erreichen das er wenn ich z.B. nach Ä suche er auch AE anzeigt?


Mfg, Steve
Steve Kolberg
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#2

Re: Umlaute anzeigen egal ob Ü oder UE usw.

  Alt 30. Sep 2005, 10:28
Es gibt das Wort OR für IF - Abfragen. Und dann noch die Funktion POS -> Hilfe. Damit ist das eine Kleinigkeit. 8)
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Umlaute anzeigen egal ob Ü oder UE usw.

  Alt 30. Sep 2005, 10:31
Standardgegenfrage: Welche Datenbank?

in MSSQL könntest du dir ne Funktion schreiben die dir alle ü in ue umwandelt. Die Abfrage könnte dann so lauten:
select * from Kontakte where dbo.umlaute(Nachnname) = 'Mueller' Dafür musst du natürlich auch von Delphi heraus sicherstellen, dass du die ü in ue umwandelts, und dann auch tatsächlich nach Mueller suchts... Mixen kannst du beides nicht
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Umlaute anzeigen egal ob Ü oder UE usw.

  Alt 30. Sep 2005, 10:39
Zitat von Hansa:
Es gibt das Wort OR für IF - Abfragen. Und dann noch die Funktion POS -> Hilfe. Damit ist das eine Kleinigkeit. 8)
Das musst du mir mal näher erklären, was du da meinst. Er will doch Abfragen in der Datenbank machen. Was nützt denn da If, Or und Pos?
  Mit Zitat antworten Zitat
Benutzerbild von SKolberg
SKolberg

Registriert seit: 20. Dez 2004
Ort: Lingen
150 Beiträge
 
Delphi 2009 Professional
 
#5

Re: Umlaute anzeigen egal ob Ü oder UE usw.

  Alt 30. Sep 2005, 10:40
HI,

ich arbeite mit MySQL. Die Ü und UE umwandeln ist schlecht da es vorgeschriebene Bezeichnungen sind und nicht einfach so geändert werden sollen/dürfen. Was mich nervt ist einfach nur das ich nach "ÜBUNG" suche er mir die auch zurück gibt aber eben nicht "UEBUNG" umgekehrt soll es natürlich auch gehen.

Suche -> Üb = Ueb, Üb
Suche -> Ueb = Ueb, Üb
Suche -> Öl = Oel, Öl

usw....


Mfg, Steve
Steve Kolberg
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#6

Re: Umlaute anzeigen egal ob Ü oder UE usw.

  Alt 30. Sep 2005, 10:44
Kann man in MySQL Funktionen erstellen

Wenn nicht, hast du ein Problem. Zum Suchen/Vergleichen hast du nur 2 Möglichkeiten... ü mit ü oder ue mit ue, soll heissen, entweder du wandelst bei der Suchabfrage alle ü in ue um, oder umgekehrt.

Ich glaub aber du hast mich falsch verstanden. Ich meinte nicht, dass du in der DB die Einträge änderst, sondern dass du nur bei der Suche die ü in ue umwandelst.

Wenn du in Delphi schreibst,
Delphi-Quellcode:
if uppercase(Dummy)='MUELLERthen begin
   ...
end ;
hast du den Inhalt von Dummy ja auch nicht verändert, sondern nur die Grossschreibung für den Vergleich herangezogen.

EDIT: OK, hab grad mal kurz nachgeschaut, MySQL scheint auch Funktionen zu unterstützen, also sollte sowas machbar sein...
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#7

Re: Umlaute anzeigen egal ob Ü oder UE usw.

  Alt 30. Sep 2005, 10:51
MySQL scheint sowas sogar oder eigene Benutzerfunktion zu unterstützen:

Hier hätte ich was für dich. Um die regular expression zu erstellen fragst aber lieben jemand anderen
  Mit Zitat antworten Zitat
Benutzerbild von SKolberg
SKolberg

Registriert seit: 20. Dez 2004
Ort: Lingen
150 Beiträge
 
Delphi 2009 Professional
 
#8

Re: Umlaute anzeigen egal ob Ü oder UE usw.

  Alt 30. Sep 2005, 10:51
Hi,
gut danke dann werde ich mal bei MySQL schauen, da wird sich bestimmt was finden.


Mfg, Steve
Steve Kolberg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.167 Beiträge
 
Delphi 12 Athens
 
#9

Re: Umlaute anzeigen egal ob Ü oder UE usw.

  Alt 30. Sep 2005, 10:53
zu dem OR ...

mach doch einfach 2 Suchstrings.

einmal wo die Ä's, Ö's, Ü's... drin sind
und dann noch 'nen Zweiten, wo du dann die Namen aus dem ersten String hernimmst und mit StringReplace alles in AE, OE... umwandelst.

Und dann läßt du einfach nach beiden Strings in der DB suchen (natürlich OR-verknüpft).
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#10

Re: Umlaute anzeigen egal ob Ü oder UE usw.

  Alt 30. Sep 2005, 10:55
Was treibt ihr denn da ?

Normalfall :

DS.SelectSQL.Text := 'SELECT * FROM TABLE1 WHERE UPPER (NAME) LIKE UPPER (''%' + edSuch.Text + '%'') ORDER BY NR'; ;

Groß/Kleinschreibung gleich miterschlagen. 8) Beliebige Position im Suchstring möglich.

für ä/ae abgewandeltes SelectSQL :

Delphi-Quellcode:
if pos ('ae',edSuch.Text) <> 0 then begin
  HilfStr := StringReplace (edSuch.Text ... ä durch ae ersetzen !
  DS.SelectSQL.Text := 'SELECT * FROM TABLE1 WHERE UPPER (NAME) LIKE UPPER (''%' + edSuch.Text + '%'') OR UPPER (NAME) LIKE UPPER (''%' + HilfStr + '%'') ORDER BY NR';
;

Reicht das ?
Gruß
Hansa
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz