AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Umlaute // Lazarus 1.4.2 mit Datenbank
Thema durchsuchen
Ansicht
Themen-Optionen

Umlaute // Lazarus 1.4.2 mit Datenbank

Ein Thema von manfred_h · begonnen am 16. Sep 2015 · letzter Beitrag vom 2. Nov 2015
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
manfred_h

Registriert seit: 4. Nov 2005
Ort: Basel
442 Beiträge
 
Delphi XE2 Enterprise
 
#1

Umlaute // Lazarus 1.4.2 mit Datenbank

  Alt 16. Sep 2015, 10:30
Hallo zusammen

Ich habe ein Problem mit einer Datenbankanwendung.
Alle Umlaute und div. Sonderzeichen éàè werden mit Fragezeichen oder falschen Symbolen dargestellt.
Auf die Datenbank wird schon mittels einer Delphi-Anwendung erfolgreich zugegriffen.
In Delphi werden mit der gleichen Komponente die Umlaute korrekt dargestellt.

Ich verwende die DataAbstract komponenten für den Zugriff auf eine MySQL Datenbank.
http://www.dataabstract.com/da/default.aspx

Ich habe schon sehr viel darüber gelesen:
http://www.delphipraxis.net/157654-t...-inhalt-2.html
http://wiki.freepascal.org/LCL_Unicode_Support/de

Allerdings wird immer wieder geschrieben das ich z.B. dies machen kann:
Delphi-Quellcode:
var
  MyString: string; // ansi encoded
begin
  MyString := SomeRTLRoutine;
  MyTEdit.Text := AnsiToUTF8(MyString);
end;
Bei meiner Datenbank Anwendung setzt ich DBEdit Felder ein die in sehr grosser Zahl vorhanden sind ein... Wie könnte ich das Zentral lösen.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#2

AW: Umlaute // Lazarus 1.4.2 mit Datenbank

  Alt 16. Sep 2015, 12:06
Alle Umlaute und div. Sonderzeichen éàè werden mit Fragezeichen oder falschen Symbolen dargestellt.
Auf die Datenbank wird schon mittels einer Delphi-Anwendung erfolgreich zugegriffen.
In Delphi werden mit der gleichen Komponente die Umlaute korrekt dargestellt.
Wahrscheinlich bin ich zu wenig flexibel, Darum was denn nun? Geht's oder Geht's nicht?

Erste Frage: Welche Zeichenkodierung wird genutzt?
Zweite Frage: Welcher Font wird genutzt?

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
TraumTaenzerDieter

Registriert seit: 4. Jun 2009
Ort: 33330 Gütersloh
8 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Umlaute // Lazarus 1.4.2 mit Datenbank

  Alt 16. Sep 2015, 12:44
Dritte Frage: welche Zugriffs-Komponenten?
Vierte Frage: welche MySql-Version?
  Mit Zitat antworten Zitat
manfred_h

Registriert seit: 4. Nov 2005
Ort: Basel
442 Beiträge
 
Delphi XE2 Enterprise
 
#4

AW: Umlaute // Lazarus 1.4.2 mit Datenbank

  Alt 16. Sep 2015, 14:02
>> K-H
Zitat:
Geht's oder Geht's nicht?
Es geht in Lazarus nicht. Die Erklärung mit Delphi machte ich um aufzuzeigen das die Verbindung Serverseitig ok ist.

Zitat:
Erste Frage: Welche Zeichenkodierung wird genutzt?
DEFAULT_CHARSET
Zitat:
Zweite Frage: Welcher Font wird genutzt?
default ( muss noch nachschauen was default ist... Sorry )


>> TraumTaenzerDieter
Zitat:
Dritte Frage: welche Zugriffs-Komponenten?
Steht doch oben... DataAbstract

Zitat:
Vierte Frage: welche MySql-Version?
Database server version 5.5.44
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Umlaute // Lazarus 1.4.2 mit Datenbank

  Alt 16. Sep 2015, 15:20
default ( muss noch nachschauen was default ist... Sorry )
Gute Idee.
Es gibt einige Fonts, die sind Über die US-ASCII-Zeichen nie hinaus gekommen.

Ebenfalls ein guter Ansatz, welche (Byte)Werte sollen angezeigt werden? Wenn die in Ordnung sind, kann man sich Frage 3 und 4 und die nach dem DB Zeichensatz sparen.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Umlaute // Lazarus 1.4.2 mit Datenbank

  Alt 16. Sep 2015, 15:40
default ( muss noch nachschauen was default ist... Sorry )
Gute Idee.
Es gibt einige Fonts, die sind Über die US-ASCII-Zeichen nie hinaus gekommen.
Wenn der Font nicht passt wird oft ein leeres Rechteck angezeigt.
Fragezeichen und falsche Symbole deuten darauf hin das in der gewählten Kombination noch ein UTF8-Wandlungsproblem (Zu Viel/Zu wenig/Falscher Stringtyp) vorliegt.
MySQL hat AFAIK ab V4 keine Probleme mehr mit Unicode.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
manfred_h

Registriert seit: 4. Nov 2005
Ort: Basel
442 Beiträge
 
Delphi XE2 Enterprise
 
#7

AW: Umlaute // Lazarus 1.4.2 mit Datenbank

  Alt 16. Sep 2015, 16:08
[QUOTE=p80286;1315981]
Es gibt einige Fonts, die sind Über die US-ASCII-Zeichen nie hinaus gekommen.

Ebenfalls ein guter Ansatz, welche (Byte)Werte sollen angezeigt werden? Wenn die in Ordnung sind, kann man sich Frage 3 und 4 und die nach dem DB Zeichensatz sparen.
Der Default Font ( hiermit ermittelt: Form1.Caption:=GetFontData(Form1.Font.Handle).Name ; )
Segoe UI
Ist mir nicht klar wo dieser angepasst werden könnte...

Zitat:
Ebenfalls ein guter Ansatz, welche (Byte)Werte sollen angezeigt werden?
Sorry, Diese Frage verstehe ich nicht ganz.
Also dargestellt werden könne sollte eingentlich Europäische Zeichen:
Alle Umlaute und div. Sonderzeichen éàèçöäü
  Mit Zitat antworten Zitat
manfred_h

Registriert seit: 4. Nov 2005
Ort: Basel
442 Beiträge
 
Delphi XE2 Enterprise
 
#8

AW: Umlaute // Lazarus 1.4.2 mit Datenbank

  Alt 16. Sep 2015, 16:49
Habe eben noch einen Test gemacht.

Wenn ich folgende Werte in Der Lazarus Anwendung eingebe:
Test öäü éàèç
Werden diese in MySQL wie folgt gespeichert:
Test öäü éÃ*èç

In Der Lazarus-Anwendung erscheinen sie aber korrekt als Test öäü éàèç.

Edit: Mit einem Online UTF8 decoder erhalte ich wieder die richtigen Zeichen...
Wo könnte dies generell umgestellt werden..

Geändert von manfred_h (16. Sep 2015 um 16:56 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#9

AW: Umlaute // Lazarus 1.4.2 mit Datenbank

  Alt 17. Sep 2015, 11:47
Zitat:
Ebenfalls ein guter Ansatz, welche (Byte)Werte sollen angezeigt werden?
Sorry, Diese Frage verstehe ich nicht ganz.
Also dargestellt werden könne sollte eingentlich Europäische Zeichen:
Alle Umlaute und div. Sonderzeichen éàèçöäü
Es werden keine Zeichen gespeichert sondern ihre Kodierung z.B. x20 für das Leerzeichen. Je nach verwendetem Zeichensatz kann der gleiche Wert unterschiedlich dargestellt werden, wenn Du Dich bzw. Dein Programm sich auf 8Bit-Codierung beschränkt. UTF8 ist eine Erweiterung der 8Bit-Kodierung. Hier entsprechen die Werte von 0-127 der ANSI-Kodierung. Höhere Werte leiten meist eine Wertesequenz ein, bei der zwei oder mehr Werte ein Zeichen darstellen.
hier findest Du mehr dazu.
Der nächste Schritt ist dann UTF16 bei dem jedes Zeichen durch zwei Byte bzw. ein Word (oder ein mehrfaches falls nötig)repräsentiert wird.

Zeichen (dargestellt oder nicht) sind nur die Interpretation von Werten. Im Zweifel kommst Du an einem Hex-Editor nicht vorbei.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#10

AW: Umlaute // Lazarus 1.4.2 mit Datenbank

  Alt 17. Sep 2015, 12:47
Habe eben noch einen Test gemacht.

Wenn ich folgende Werte in Der Lazarus Anwendung eingebe:
Test öäü éàèç
Werden diese in MySQL wie folgt gespeichert:
Test öäü éÃ*èç

In Der Lazarus-Anwendung erscheinen sie aber korrekt als Test öäü éàèç.

Edit: Mit einem Online UTF8 decoder erhalte ich wieder die richtigen Zeichen...
Wo könnte dies generell umgestellt werden..
Schaut danach aus als würde deine Kombination Lazarus + DB-Treiber einmal zu viel UTF8-Wandeln.
Windows Vista - Eine neue Erfahrung in Fehlern.
  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 00:17 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