Subject | Delphi XE - Unicode |
---|---|
Author | Tibi |
Post date | 2012-06-22T05:43Z |
I have a Delphi XE program then connects to a Firebird (2.5.1) database.
Everyting is fine using ASCII characters (doing this since Delphi 6) . I use
IBX components to access the database. One of my customers asked me to let
him input Ucrainean (cyrilic) characters into the program. Trying to
copy&paste the "Податковий код" text into a TDBEdit gets me some "?????????"
characters.
First of all I googled for some information.
I found out that I have to :
1. modify my TIBDatabase params -> added lc_ctype=UTF8
2. modify my database, a nice utility named fbclone converted to UTF8
fbclone.exe -v -s 192.168.80.5:C:\DEVELOP\GESTOCW\GESTOC.FDB -su sysdba -sp
*** -t 192.168.80.5:c:\develop\gestocw\gestoc_utf.fdb -tu sysdba -tp *** -u
sysdba -p *** -c UTF8
now my database :
CREATE DATABASE 'C:\DEVELOP\GESTOCW\GESTOC.FDB'
USER 'SYSDBA' PASSWORD '***'
PAGE_SIZE 4096
DEFAULT CHARACTER SET UTF8 COLLATION UTF8;
The problem surely is on my side, because in IBExpert I copy & paste the
text and I have a "Display data as unicode (F3)" button, that does magic
:-) :
it toggles between showing me : "ÐодаÑковий код" or "Податковий
код" .
please help me implement this in TDBEdit and TDBGrid.
Thank you,
Tiberiu
Everyting is fine using ASCII characters (doing this since Delphi 6) . I use
IBX components to access the database. One of my customers asked me to let
him input Ucrainean (cyrilic) characters into the program. Trying to
copy&paste the "Податковий код" text into a TDBEdit gets me some "?????????"
characters.
First of all I googled for some information.
I found out that I have to :
1. modify my TIBDatabase params -> added lc_ctype=UTF8
2. modify my database, a nice utility named fbclone converted to UTF8
fbclone.exe -v -s 192.168.80.5:C:\DEVELOP\GESTOCW\GESTOC.FDB -su sysdba -sp
*** -t 192.168.80.5:c:\develop\gestocw\gestoc_utf.fdb -tu sysdba -tp *** -u
sysdba -p *** -c UTF8
now my database :
CREATE DATABASE 'C:\DEVELOP\GESTOCW\GESTOC.FDB'
USER 'SYSDBA' PASSWORD '***'
PAGE_SIZE 4096
DEFAULT CHARACTER SET UTF8 COLLATION UTF8;
The problem surely is on my side, because in IBExpert I copy & paste the
text and I have a "Display data as unicode (F3)" button, that does magic
:-) :
it toggles between showing me : "ÐодаÑковий код" or "Податковий
код" .
please help me implement this in TDBEdit and TDBGrid.
Thank you,
Tiberiu