Fragezeichen statt Umlaute
Re: Fragezeichen statt Umlaute
Die Zeichensätze in der Anwendung umzuwandeln ist ein schwerer Fußfehler. Genau so erbst Du die von Dir beschriebenen Probleme (anzeige, suchen, sortieren). Versuche möglichst *immer* mit utf8 zu arbeiten (vor allem, wenn Mehrsprachigkeit mal ein Thema sein könnte). Anders wirst Du das Problem *nie* los.
Re: Fragezeichen statt Umlaute
Sorry, aber zum "Fußfehler" wird's nur dann, wenn man nicht weiß was man tut und unsauber programmiert. Es gibt oft Programme (ohne UTF8) mit denen man kooperieren muss, DBs die's nicht können oder Altdaten die man nicht konvertieren sollte.
Anzeigen, Suchen, Sortieren geht mit allen Charaktersätzen, das ging auch bevor es UTF8 gab. Man muss nur den Überblick behalten.
Gruß hde
Anzeigen, Suchen, Sortieren geht mit allen Charaktersätzen, das ging auch bevor es UTF8 gab. Man muss nur den Überblick behalten.
Gruß hde
Re: Fragezeichen statt Umlaute
Guten Morgen
Bitte nicht vergessen, dass die DB von der ich spreche nicht ich erstelle sondern ein anderes Programm.
Ich schreibe hier nur ein kleines AddOn.
Gruß
Laines
Bitte nicht vergessen, dass die DB von der ich spreche nicht ich erstelle sondern ein anderes Programm.
Ich schreibe hier nur ein kleines AddOn.
Gruß
Laines
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: Fragezeichen statt Umlaute
Die DB kann wie ich schon geschrieben habe auch kein UTF8 

W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: Fragezeichen statt Umlaute
Falls es jemanden interessiert, wie das Problem in MSEgui gelöst wird:
- tmsesqlquery speichert Textfelder als UnicodeString mit variabler Länge, dies behebt auch das Problem der unterschiedlichen Feld- und Bytelängen.
- Beim lesen von der DB und beim schreiben zur DB wird UnicodeString entweder nach der Systemcodierung oder nach utf-8 gewandelt.
- Die Wahl utf-8 oder Systemcodierung lässt sich für t*connection und auch für einzelne datasets vornehmen.
Martin
- tmsesqlquery speichert Textfelder als UnicodeString mit variabler Länge, dies behebt auch das Problem der unterschiedlichen Feld- und Bytelängen.
- Beim lesen von der DB und beim schreiben zur DB wird UnicodeString entweder nach der Systemcodierung oder nach utf-8 gewandelt.
- Die Wahl utf-8 oder Systemcodierung lässt sich für t*connection und auch für einzelne datasets vornehmen.
Martin
Re: Fragezeichen statt Umlaute
1)hde hat geschrieben:Sorry, aber zum "Fußfehler" wird's nur dann, wenn man nicht weiß was man tut und unsauber programmiert. Es gibt oft Programme (ohne UTF8) mit denen man kooperieren muss, DBs die's nicht können oder Altdaten die man nicht konvertieren sollte.
Anzeigen, Suchen, Sortieren geht mit allen Charaktersätzen, das ging auch bevor es UTF8 gab. Man muss nur den Überblick behalten.
Gruß hde
Bei einer DB, die von unterschiedlichen Quellen (nicht beeinflussbaren) befüllt wird, kannst du selbst so sauber programmieren wie du willst und die DB hat immer ein Problem. Außer die DB verwendet erkennbar utf8.
2)
Warum sollte man eine DB nicht Richtung utf8 konvertieren können sobald diese das unterstützt (sofern man die "Lufthoheit" darüber beitzt)?
3)
Anzeigen, Suchen und Sortieren war und ist IMMER noch ein Problem sofern Datenbanken utf8 nicht vernünftig unterstützen (da es durchaus noch jede Menge Altlasten gibt). Oder wie kriegst Du Keilschrift in eine DB welche nur einen deutschen Charset unterstützt?
4)
Wenn man Datenbanken unterstützen muss, welche lediglich mit irgendwelchen Gurken-Charsets umgehen können, dann hat man einfach ein Problem, welches man nicht wegdiskutieren kann. Dann *muss* man in der Anwendung umwandeln. Ist aber eben alles endere als optimal (außer man ist einer der letzten Verfechter des FAT-Client-Prinzips und ignoriert modernere Entwicklungsparadigmen).
5)
Und mir fällt heutzutage KEIN Problem ein, welches eine ordentliche Trennung zwischen Client und Server bei Neuentwicklungen rechtfertigen könnte.
Gruß
Erx
Re: Fragezeichen statt Umlaute
Tut mir Leid wenn ich jetzt etwas unhöflich klinge.
Wird das jetzt eine Grundsatzdiskussion oder lösen wir hier im Forum Fragen und Probleme.
Ich habe übrigens das Problem mit dem Suchen gelöst. Der Fehler lag an den ANFÜHRUNGSZEICHEN (über der 2) es müssen im Format() 2 Einfache (über der Raute#) sein.
Gruß
Laines
(Mich bitte jetzt nicht ignorieren, wenn ich wieder mal eine Frage habe)
Wird das jetzt eine Grundsatzdiskussion oder lösen wir hier im Forum Fragen und Probleme.
Ich habe übrigens das Problem mit dem Suchen gelöst. Der Fehler lag an den ANFÜHRUNGSZEICHEN (über der 2) es müssen im Format() 2 Einfache (über der Raute#) sein.
Gruß
Laines
(Mich bitte jetzt nicht ignorieren, wenn ich wieder mal eine Frage habe)
Re: Fragezeichen statt Umlaute
Keine Angst habe ich nicht als unhöflich empfunden.laines hat geschrieben:Tut mir Leid wenn ich jetzt etwas unhöflich klinge.
Wird das jetzt eine Grundsatzdiskussion oder lösen wir hier im Forum Fragen und Probleme.
Ich habe übrigens das Problem mit dem Suchen gelöst. Der Fehler lag an den ANFÜHRUNGSZEICHEN (über der 2) es müssen im Format() 2 Einfache (über der Raute#) sein.
Gruß
Laines
(Mich bitte jetzt nicht ignorieren, wenn ich wieder mal eine Frage habe)
Mein Beitrag war keinesfalls als Grundsatzdiskussion, sondern eher als Anregung gedacht

Re: Fragezeichen statt Umlaute
mh ... zum Glück bin ich selten in diesem Forum und treff deshalb nicht auf Leute die angeblich seit 30 jahren programmieren aber dann überheblich solchen "Quatsch" erzählen. Wohl ein "Schönwetter"programmer.
Also Laines, wenn deine DB nur Ansi kann oder deine Daten in Ansi vorliegen, übersetze nach jedem Lesen und vor jedem Schreiben und es wird keine größeren Probs geben. Sortieren konnten wir auch vor über 40 Jahren schon, sogar Lochkarten. Keilschrift und Runen lassen wir mal außen vor.
Solltest du allerdings auf dem Mac arbeiten und Daten nicht nur mit diversen DBs sondern auch noch gleichzeitig mit word:mac austauschen müssen, wird's etwas kompliziert, aber auch das ist gelöst. Dann melde dich.
Lass dich nicht beirren.
Gruß hde
Also Laines, wenn deine DB nur Ansi kann oder deine Daten in Ansi vorliegen, übersetze nach jedem Lesen und vor jedem Schreiben und es wird keine größeren Probs geben. Sortieren konnten wir auch vor über 40 Jahren schon, sogar Lochkarten. Keilschrift und Runen lassen wir mal außen vor.

Solltest du allerdings auf dem Mac arbeiten und Daten nicht nur mit diversen DBs sondern auch noch gleichzeitig mit word:mac austauschen müssen, wird's etwas kompliziert, aber auch das ist gelöst. Dann melde dich.
Lass dich nicht beirren.
Gruß hde
Re: Fragezeichen statt Umlaute
Morgen hde
Ich lass mich nicht beirren
Das ist eh erst mal der Einstieg ob mir das Spaß macht und ganz wichtig, ob ich das programmieren auch kapiere.
P.s. Ich suche noch ein gutes Forum für C# (am besten für komplette NEWBIES) wie mich.
Gruß
Laines
Ich lass mich nicht beirren

Das ist eh erst mal der Einstieg ob mir das Spaß macht und ganz wichtig, ob ich das programmieren auch kapiere.
P.s. Ich suche noch ein gutes Forum für C# (am besten für komplette NEWBIES) wie mich.
Gruß
Laines
Re: Fragezeichen statt Umlaute
Hallo Laines,
kapieren wirst du es, da bin ich mir ganz sicher, auch wenn in meinen Augen beim flüchtigen Hinschauen einiges "um die Ecke herum" von dir gelöst wird. Aber nimm es nicht als Kritik, das wird schon. Leider bin beruflich so im Stress dass ich mir das nicht näher anschauen kann zumal meine Objekte ganz wo anders liegen.
Aber wenn du wirklich neu anfängst, verzettele dich nicht und werde erst mal fit in einer Sprache. Die C-Sprachen haben zwar die gleichen Funktionen wie Pascal, aber die Syntax ist anders. Und wenn du beide gleichzeitig lernst verwirrt das nur.
Gruß hde
kapieren wirst du es, da bin ich mir ganz sicher, auch wenn in meinen Augen beim flüchtigen Hinschauen einiges "um die Ecke herum" von dir gelöst wird. Aber nimm es nicht als Kritik, das wird schon. Leider bin beruflich so im Stress dass ich mir das nicht näher anschauen kann zumal meine Objekte ganz wo anders liegen.
Aber wenn du wirklich neu anfängst, verzettele dich nicht und werde erst mal fit in einer Sprache. Die C-Sprachen haben zwar die gleichen Funktionen wie Pascal, aber die Syntax ist anders. Und wenn du beide gleichzeitig lernst verwirrt das nur.
Gruß hde
Re: Fragezeichen statt Umlaute
Danke für den Tipp ich werde es mir zu Herzen nehmen.
Kritik sieht anders aus. Sonst würde ich nicht meine Fragen hier stellen.
Ich habe auch schon einige Verbesserungen gemacht. Ich arbeite z.B. schon mit const und Format() (STOLZ).
Gruß
Laines
Kritik sieht anders aus. Sonst würde ich nicht meine Fragen hier stellen.
Ich habe auch schon einige Verbesserungen gemacht. Ich arbeite z.B. schon mit const und Format() (STOLZ).
Gruß
Laines