【问题标题】:MySQL database not saving non-latin characters in VARCHAR field correctlyMySQL 数据库未在 VARCHAR 字段中正确保存非拉丁字符
【发布时间】:2014-06-03 23:32:54
【问题描述】:

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

例如:

这是我在 IDE (NetBeans) 的调试器中看到的高音扬声器状态:

这是高音单元中的状态:

这是我数据库中的状态:

我的源代码保存为UTF-8,fullTexteditedText字段都是varchar(255) utf8_general_mysql500_ci,Server Collat​​ion是utf8mb4_general_ci

这里出了什么问题?

【问题讨论】:

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


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-17
    • 2015-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多