Delphi Firemonkey FMX显示MySQL中的双字节字符串

Delphi Firemonkey FMX显示MySQL中的双字节字符串,mysql,delphi,firemonkey,double-byte,Mysql,Delphi,Firemonkey,Double Byte,我正在尝试在firemonkey应用程序windows和android中显示双字节字符 Query1.SQL.Text:= 'SELECT ITEM_NAME_KR FROM items WHERE ItemID=1'; Query1.Open; showmessage( Query1.fieldbyname('ITEM_NAME_KR').AsString ); Edit1.Text := Query1.fieldbyname('ITEM_NAME_KR').AsString; MySQL字

我正在尝试在firemonkey应用程序windows和android中显示双字节字符

Query1.SQL.Text:= 'SELECT ITEM_NAME_KR FROM items WHERE ItemID=1';
Query1.Open;
showmessage( Query1.fieldbyname('ITEM_NAME_KR').AsString );
Edit1.Text := Query1.fieldbyname('ITEM_NAME_KR').AsString;
MySQL字段使用utf8\U unicode\U ci编码设置为utf8。我知道这是正确的,因为当我在MySQL Bench中更新它时,它在Bench中正确地显示了双字节

我甚至尝试为ITEM_NAME_KR的WideString字段添加一个持久字段,但它给了我一个错误:“FDQuery1:field'ITEM_NAME_KR'的类型不匹配,应为:WideString-actual:String”

我已经搜索了不少文章,但我看不到任何关于如何在firemonkey应用程序(包括Windows/Android)中显示双字节字符的特别提及


你知道我遗漏了什么吗?

不太清楚你的问题是什么,因为你没有发布数据库的任何输出。但是由于
Delphi 2009
字符串
类型切换为
Unicode
,因此每个字符已经有2个字节长了!道歉。。。字符串输出为3个问号-???(有3个双字节字符)。Win32会是一个问题吗?不,Win32不是一个问题。那么它为什么只显示一个???如果MySQL WorkBench可以显示中文消息,我相信我的Delphi应用程序应该能够显示它。你有一个小样本的FMX应用程序,可以显示双字节吗?没有,我没有一个例子,sry。当您将DB数据放入类型为
RawByteString
的字符串变量中时会发生什么情况?不太确定您的问题是什么,因为您没有发布DB的任何输出。但是由于
Delphi 2009
字符串
类型切换为
Unicode
,因此每个字符已经有2个字节长了!道歉。。。字符串输出为3个问号-???(有3个双字节字符)。Win32会是一个问题吗?不,Win32不是一个问题。那么它为什么只显示一个???如果MySQL WorkBench可以显示中文消息,我相信我的Delphi应用程序应该能够显示它。你有一个小样本的FMX应用程序,可以显示双字节吗?没有,我没有一个例子,sry。如果将DB数据放入类型为
RawByteString
的字符串变量中,会发生什么情况?