MySQL数据库无法正确保存VARCHAR字段中的非拉丁字符

时间:2014-04-19 14:38:20

标签: mysql sql-server database character-encoding collation

我正在创建一个应用程序,我可以获取推文并将它们存储在数据库中以供将来编辑,我发现我的本地数据库(使用XAMPP运行)将非拉丁字符存储为问号。

例如:

这是我在IDE(NetBeans)调试器中看到的tweeter状态:

1

这是tweeter中的状态:

2

这是我的数据库中的状态:

3

我的源代码保存为UTF-8,fullTexteditedText字段均为varchar(255) utf8_general_mysql500_ci,服务器排序规则为utf8mb4_general_ci

这里出了什么问题?

1 个答案:

答案 0 :(得分:0)

SqlServer varchar 仅支持单字节字符集,例如Latin-1。

如果您可以控制数据库,请尝试使用支持双字节字符集的 nvarchar

varchar概述:http://dev.mysql.com/doc/refman/5.5/en/char.html

Latin-1支持的字符:http://en.wikipedia.org/wiki/ISO/IEC_8859-1