MySQL数据库存储中文乱码。data数据类型为text
中文正常显示
更改数据库表为utf8字符集;php网页和代码文件都为utf-8.
MySQL数据库出现中文乱码的问题可能由于多种原因所致,以下是一些建议和解决方案:
修改数据库字符集:在MySQL的配置文件(例如my.cnf)中修改字符集配置。例如,将default-character-set设置为utf8mb4,以支持多语言字符集。重启MySQL服务后即可生效。
更改数据库编码:通过更改数据库的字符集编码来解决乱码问题。在MySQL命令行中执行以下命令:
ALTER DATABASE db_name CHARACTER SET utf8mb4;
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4; 其中,db_name是数据库名,table_name是表名。这将把数据库和表的字符集更改为utf8mb4。 3. 更改客户端编码:如果客户端应用程序与数据库之间的通信出现乱码问题,可以更改客户端的字符集编码。在应用程序的配置文件或代码中指定正确的字符集编码。
修复数据:如果数据已经损坏,可能导致乱码问题。通过执行数据修复操作来解决该问题。在MySQL命令行中执行以下命令:
CHECK TABLE table_name;
REPAIR TABLE table_name; 这将检查并修复表中的损坏数据。
更改字符集转换方式:如果数据在客户端和数据库之间传输时出现乱码问题,可以更改字符集转换方式。在应用程序的配置文件或代码中指定正确的字符集转换方式。例如,使用iconv库进行字符集转换。 通过以上方法,您可以解决MySQL数据库中文乱码的问题。
1、执行show variables like '%character%';
确认character_set_client、character_set_connection、character_set_results、character_set_system、character_set_server以及character_set_database(不包括character_set_filesystem)这些参数的值相同。
如果character_set_server参数不对,可以在控制台修改。https://help.aliyun.com/document_detail/96063.htm
2、确保库、表、列的字符集一致。看你的截图只确认了表的字符集。
库:
列:
3、检查SQL Console的字符集设置。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云关系型数据库主要有以下几种:RDS MySQL版、RDS PostgreSQL 版、RDS SQL Server 版、PolarDB MySQL版、PolarDB PostgreSQL 版、PolarDB分布式版 。