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

标签 mysql sql-server database character-encoding collation

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

例如:

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

1

这是推文中的状态:

2

这是我数据库中的状态:

3

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

这里出了什么问题?

最佳答案

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

关于MySQL 数据库未正确保存 VARCHAR 字段中的非拉丁字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23171366/

相关文章:

mysql - 从连接表中选择类别并连接以形成列表结果

php - Mysql 选择 10 条记录(5 条记录和 5 条另一条记录)

php - mysql中前3个最大值的序列不正确

mysql - mysql中数据的复制/更新

sql-server - SQL Server 中的 View 存储在哪里

sql - 如何计算与唯一 ID 相关的值已更改的次数?

sql-server - 如何列出给定 sql 查询的所有列

mysql - 尝试从我即时求和的列中获取累积总和

iphone - 数据库未更新

mysql - 如何使用位于其他服务器上的 WordPress 数据库