So I have a simple VARCHAR field in an Oracle database. There is a text with a special character (ő) in it.
When I execute a select with Zeos (or PL/SQL for that matter) this character gets converted, turning it to "o", but... only in this record. In other records the same character appears normally.
HOWEVER
There's an application written in C#, which correctly reads the text out.
My idea is that it was loaded incorrectly (like o with the wave) so I tried to get the DUMP of it, which returned:
According to this, my "ő" is stored as 0xC3. Now the funny part, if I try to decode 0xC3 with every codepage available in Delphi (TEncoding.GetEncoding) I never get the character I'm looking for.
NLS_CHARACTERSET is AL32UTF8 on the server, if it makes any difference.
Can anyone make any sense out of this...? Can I make Zeos read this out as the C# application does?
Any tips are welcome.
Some wierd encoding issue maybe?
Moderators: gto, EgonHugeist, mdaems
Some wierd encoding issue maybe?
You do not have the required permissions to view the files attached to this post.
Delphi 12.2, Zeos 8 from latest GIT snapshot
Using:
- MySQL server 8.0.18; libmysql.dll 8.0.40 x64 5.7.19 x68, libmariadb.dll 3.3.11
- Oracle server 11.2.0, 12.1.0, 19.0.0; oci.dll 21.15
- MSSQL 2012, 2019; sybdb.dll FreeTDS_3102
- SQLite 3.47
Using:
- MySQL server 8.0.18; libmysql.dll 8.0.40 x64 5.7.19 x68, libmariadb.dll 3.3.11
- Oracle server 11.2.0, 12.1.0, 19.0.0; oci.dll 21.15
- MSSQL 2012, 2019; sybdb.dll FreeTDS_3102
- SQLite 3.47