Mysql latin1土耳其数据和delphi 2010 utf8

时间:2010-04-24 17:08:13

标签: mysql delphi utf-8 ado dbexpress

我有表格整理latin1_general_ci并且具有土耳其字符值。我可以在delphi 7 + zeos上使用这些数据没有问题。但是我想将我的delphi升级到2010版本,但是我看到zeos太慢了。所以我想使用odbc + ado或dbexpress解决方案。

dbexpress解决方案工作正常,将输入的数据显示为输入并写入输入表,而不对列字符集进行任何更改。但是我看到dbexpress有问题。例如,当我从具有列类型为varchar,decimal,int,tinyint,text的表中选择*时,会在xp系统上给出av错误。 vista和7没有给出任何错误并且工作正常(未经过全面测试)。

在xp系统中访问违规跟踪是 访问冲突调试跟踪是

| 7C9010E0 | ntdll.dll | | | RtlLeaveCriticalSection | |

| 7E419239 | USER32.dll | | | CharUpperBuffW | |

| 7E419216 | USER32.dll | | | CharUpperBuffW | |

| 7C80CED0 | KERNEL32.DLL | | | LCMapStringW | |

| 7C910380 | ntdll.dll | | | RtlImageNtHeader | |

| 7C903247 | ntdll.dll | | | RtlConvertUlongToLargeInteger | |

| 7C90E485 | ntdll.dll | | | KiUserApcDispatcher | |

| 009A631E | Project1.exe | Unit1.pas | TForm1 | Button1Click | 110 [37] |

ado解决方案(dbgo)工作正常,但它没有显示我输入的数据。想要一切都是utf。但我不想在测试所有内容之前将我的数据转换为utf。我如何看到输入的数据并写入客户端utf并存储latin1(如zeos或dbexpress那样)。

我尝试了很多其他选择。例如。 mysql side collat​​ion和charset参数。

抱歉我的英语不好。我希望有人了解我。

感谢。

1 个答案:

答案 0 :(得分:0)

我建议迁移到3d派对解决方案,例如AnyDAC。 AnyDAC支持以下MySQL功能:

  • 普通和嵌入式服务器。
  • SSL连接。
  • ENUM,SET等数据类型。
  • UTF8等字符编码。
  • AUTO_INCREMENT列。
  • MySQL 5存储过程。
  • 具有多个结果集的批处理命令。
  • 查询执行中止。
  • 数组DML。