Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   € zeichen macht probleme beim Einfügen in die db (https://www.delphipraxis.net/162137-%80-zeichen-macht-probleme-beim-einfuegen-die-db.html)

khh 8. Aug 2011 16:44

Datenbank: firebird • Version: 2.1 • Zugriff über: zeos

€ zeichen macht probleme beim Einfügen in die db
 
hallo zusammen,
per

FQuery1['BEZEICHNUNG1']:= FBEZEICHNUNG1;

bestücke ich eine Query, und per post speichere ich die Datensätze in der DB.
Das wird prinzipiell in unsern Programmen so gehandelt.

Sobald jetzt aber in FBEZEICHUNG1 das € vorkommt, bekomme ich eine exception -802
... or string truncation ..
cannot translate character between character sets

ich nehme mal an das Eurozeichen wird per ' maskiert was zum Fehler im String führt.
Lasse ich mir die Variable anzeigen steht ganz normal '€' drin,
Schreibe ich das €- zeichen in ' ' in die Variable wird '''#226#130#172#''' angezeigt :-(

das DB-Feld ist vom Typ
CHAR(50) CHARACTER SET ISO8859_1

was kann ich tun?

bernerbaer 8. Aug 2011 16:54

AW: € zeichen macht probleme beim Einfügen in die db
 
Ums mal ganz brutal zu formulieren: ISO-8859_1 kennt ursprünglich kein €

es wurde erst nachträglich eingefügt, indem das Zeichen an Pos 128 durch das €-Symbol ersetzt wurde. Ob sich aber jetzt alle Programme, bzw Datenbanken und DB-Treiber daran halten, ist fraglich, bzw eher unwahrscheinlich.

also: utf8 oder evtl. ISO-8559-15 verwenden

DeddyH 8. Aug 2011 16:57

AW: € zeichen macht probleme beim Einfügen in die db
 
Da es in IBExpert funktioniert (gut, das €-Zeichen musste ich über die Zwischenablage einfügen) habe ich ZEOS im Verdacht.

khh 8. Aug 2011 17:04

AW: € zeichen macht probleme beim Einfügen in die db
 
mh

und was mach ich da am Besten?

welcher Zeichensatz funktioniert denn mit dem € ?

p80286 8. Aug 2011 17:04

AW: € zeichen macht probleme beim Einfügen in die db
 
Ich nutze in solchen Fällen immer die Währungskürzel
EUR
USD
RMD
usw.

Gruß
K-H

himitsu 8. Aug 2011 17:08

AW: € zeichen macht probleme beim Einfügen in die db
 
Was immer geht, ist UTF8 (sollten zumindestens alle guten DBMS und Verbindungskomponenten beherschen :stupid: )
und man ist auch gleich für gewisse Fremdsprachen gewappnet.

Gut, bei der Sortierreihenfolge und bei Stringvergleichen müßte man eventuell noch aufpassen, falls man da bestimmte Wünsche hegt.

Hansa 8. Aug 2011 17:09

AW: € zeichen macht probleme beim Einfügen in die db
 
Zitat:

Zitat von p80286 (Beitrag 1115667)
Ich nutze in solchen Fällen immer die Währungskürzel
EUR

So was sieht man selten. :lol: Ansonsten gilt eher das Prinzip : warum einfach, wenn es auch kompliziert geht ? :mrgreen:

khh 8. Aug 2011 17:14

AW: € zeichen macht probleme beim Einfügen in die db
 
Zitat:

Zitat von p80286 (Beitrag 1115667)
Ich nutze in solchen Fällen immer die Währungskürzel
EUR
USD
RMD
usw.

Gruß
K-H

ist auf jeden Fall ne Alternative wenn der Kunde nicht auf diesem € besteht :-)

khh 8. Aug 2011 17:24

AW: € zeichen macht probleme beim Einfügen in die db
 
Zitat:

Zitat von DeddyH (Beitrag 1115665)
Da es in IBExpert funktioniert (gut, das €-Zeichen musste ich über die Zwischenablage einfügen) habe ich ZEOS im Verdacht.

mh, das beweist dann aber doch, dass der Zeichensatz nicht schuld dran ist, und so bleiben kann.

Aber was tun?

bernerbaer 8. Aug 2011 19:47

AW: € zeichen macht probleme beim Einfügen in die db
 
nun wie schon gesagt, ISO-8859-1 unterstützt offiziell kein €.

Du kannst nun aber suchen, ob du eine Datenzugriffkomponente findest, die das € Symbol an Pos 128(?) unterstützt.

[edit]das ist aber definitiv ein inoffizieller Hack, UTF-8 würde ich vorziehen[/edit]


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:48 Uhr.
Seite 1 von 3  1 23      

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