AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Umlaute in UTF8: Äthiopien statt Äthiopien
Thema durchsuchen
Ansicht
Themen-Optionen

Umlaute in UTF8: Äthiopien statt Äthiopien

Ein Thema von Perlsau · begonnen am 20. Jun 2012 · letzter Beitrag vom 23. Jun 2012
Antwort Antwort
Perlsau
(Gast)

n/a Beiträge
 
#1

AW: Umlaute in UTF8: Äthiopien statt Äthiopien

  Alt 20. Jun 2012, 10:12
... Nun werden Umlaute in diesem Lookup-Feld nicht richtig dargestellt ...
HEUREKA!
Problem gelöst!!!
Kurzerhand:
Delphi-Quellcode:
//DB_Main.ConnectParams.CharSet := 'UTF8';
DB_Main.ConnectParams.CharSet := 'ISO8859_1';
Wie ich vorgegangen bin?

1. Google nach Firebird+utf8+Delphi+Dbgrid suchen lassen
2. Gleich der erste Eintrag brachte diesen Thread.
3. Umgestellt, gestartet und funktioniert.
Angehängte Grafiken
Dateityp: jpg Gelöst.jpg (81,9 KB, 18x aufgerufen)
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#2

AW: Umlaute in UTF8: Äthiopien statt Äthiopien

  Alt 20. Jun 2012, 10:47
HEUREKA!Problem gelöst!!!
Nein, doch nicht gelöst: eine Abfrage, nachdem die Verbindung zur DB hergestellt ist, ergibt: keine Unicode-Verbindung
IF DB_Main.IsUnicodeConnect THEN ShowMessage('Unicode-Verbindung'); War also doch nur eine Scheinlösung ...
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#3

AW: Umlaute in UTF8: Äthiopien statt Äthiopien

  Alt 20. Jun 2012, 13:45
Ich tippe nun ganz entschlossen auf einen Bug in meiner alten FibPlus-Version. Bei Devrace steht nämlich zu lesen:
"By default in Delphi 2009-2010 unicode fields are mapped to TFIBWideStringField objects. This improvement was made because TStringField cannot be processed correctly in MIDAS applications."

Aber so richtig verstehe ich das nicht, das gebe ich ganz offen zu. Immerhin hab ich aber jetzt herausgefunden, daß meine Datenbank, wenn man sie mit DbExpress (geht leider nicht mit meiner Delphi-Version) anspricht, diesen Fehler nicht zeigt. Das linke Bild hat mir ein freundlicher XE2-Besitzer "geschossen", nachhdem er mit meiner DB kurz nachgebaut hatte, was bei mir Probleme macht. Das Feld Währung in der linken Tabelle (LAND) ist ein Look-Up-Feld, definiert im ClientDataset. Bei mir sieht das dagegen noch immer so aus wie im Bild rechts.
Angehängte Grafiken
Dateityp: jpg ToFrank.jpg (76,9 KB, 20x aufgerufen)
Dateityp: jpg Mist.jpg (112,6 KB, 17x aufgerufen)

Geändert von Perlsau (20. Jun 2012 um 13:48 Uhr)
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#4

AW: Umlaute in UTF8: Äthiopien statt Äthiopien

  Alt 20. Jun 2012, 14:36
Hallo Frank,

ich glaube du verweist auf den 6.9.9 ChangeLog? Darin sind noch ein paar weitere Bugs als gefixt gekennzeichnet, die mit Unicode zu tun haben. Sofern du Zugriff auf eine neuere FIBPlus Version hast, würde ich mal ein Upgrade versuchen, bevor du in eine andere Richtung siehst. Ich verwende selbst FIBPlus nicht, aber hatte immer wieder mal über Probleme mit Unicode gelesen und es wurden in diesem Bereich mit jedem Release Stabilisierungen vorgenommen.

lg,
Thomas
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#5

AW: Umlaute in UTF8: Äthiopien statt Äthiopien

  Alt 20. Jun 2012, 14:49
Hallo Frank, ich glaube du verweist auf den 6.9.9 ChangeLog? Darin sind noch ein paar weitere Bugs als gefixt gekennzeichnet, die mit Unicode zu tun haben.
Ja, z.B.:
"The error in DataSet.FieldValues when working with unicode databases in RAD Studio 2009."
und
"An error in Unicode lookup-fields has been fixed."

Da ham die wohl nicht richtig gefixt ...

Sofern du Zugriff auf eine neuere FIBPlus Version hast, würde ich mal ein Upgrade versuchen, bevor du in eine andere Richtung siehst.
Nein, leider nicht.

Ich verwende selbst FIBPlus nicht, aber hatte immer wieder mal über Probleme mit Unicode gelesen und es wurden in diesem Bereich mit jedem Release Stabilisierungen vorgenommen.
Tja, jetzt wollt ich mal was richtig machen und auf Unicode umsatteln – endlich! – und dann sowas ...

Ich schau mal, ob ich das mit anderen DB-Komponenten hinkriege. FibPlus ist mir zu teuer, um neuere Versionen zu erwerben. Mit UIB hatte ich ebenfalls bereits schlechte Erfahrungen gemacht. Außerdem hab ich im Moment sowieso kein Geld übrig für irgendwelche Anschaffungen ... Also verzichte ich erstmal auf Unicode und mache weiter mit meinem gewohnten ISO8859_1, da weiß ich, was ich habe ...
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#6

AW: Umlaute in UTF8: Äthiopien statt Äthiopien

  Alt 20. Jun 2012, 15:46
Evtl könntest du es mal zeitweise mit den ZEOS Komponenten versuchen, die sind ja (AFAIK immer noch) kostenlos.
Später, wenn du dann mal Geld für Komponenten übrig hast, kannst du dann evtl. auf UNIDAC umstellen, meines Erachtens die besten Datenbank-Komponenten, zumindest hatte ich noch nie Probleme mit denen und finde das Handling sehr elegant.
Ich hatte damals von ZEOS 7 auf UniDAC umgestellt, die Umstellung war sehr einfach und in kurzer Zeit erledigt.

P.S.
Kann aber sein, dass mein Tipp Mist ist und du dir mit den Zeos-Komponenten noch mehr Ärger einhandelst...habe mit Ihnen schon lange nicht mehr gearbeitet.
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#7

AW: Umlaute in UTF8: Äthiopien statt Äthiopien

  Alt 20. Jun 2012, 16:25
Evtl könntest du es mal zeitweise mit den ZEOS Komponenten versuchen, die sind ja (AFAIK immer noch) kostenlos.
Später, wenn du dann mal Geld für Komponenten übrig hast, kannst du dann evtl. auf UNIDAC umstellen, meines Erachtens die besten Datenbank-Komponenten, zumindest hatte ich noch nie Probleme mit denen und finde das Handling sehr elegant.
Ich hatte damals von ZEOS 7 auf UniDAC umgestellt, die Umstellung war sehr einfach und in kurzer Zeit erledigt.

P.S.
Kann aber sein, dass mein Tipp Mist ist und du dir mit den Zeos-Komponenten noch mehr Ärger einhandelst...habe mit Ihnen schon lange nicht mehr gearbeitet.
Zeos hab ich in meinem Radstudio ebenfalls installiert, ist aber wesentlich langsamer als FibPlus und viel umständlicher zu handhaben von wegen Provider und ClientDataset usw.

Was mir noch auffällt: Wenn ich auf ISO8859_1 umstelle, kann ich in den Tabellen-Lookup-Feldern locker nach dem richtigen Eintrag suchen mit Eingabe der ersten paar Buchstaben, wie man das eben so von einer Lookup-Komponente kennt. Habe ich dagegen auf UTF8 gestellt, geht das nicht mehr ... die Lookup-Komponente in der Tabelle reagiert nicht auf meine Eingaben, nur auf Cursertasten und Enter ...
  Mit Zitat antworten Zitat
Antwort Antwort


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 02:36 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