菜单开关

周梦康 发表于 2018-03-19 393 次浏览 标签 : Mysql

免费领取阿里云优惠券 我的直播 - 《PHP 进阶之路》

mysql> show variables like 'character%';
+--------------------------+--------+
| Variable_name            | Value  |
+--------------------------+--------+
| character_set_client     | latin1 |
| character_set_connection | latin1 |
| character_set_database   | utf8   |
| character_set_filesystem | binary |
| character_set_results    | latin1 |
| character_set_server     | utf8   |
| character_set_system     | utf8   |
| character_sets_dir       |        |
+--------------------------+--------+

解决办法

set character_set_client=utf8;
set character_set_results=utf8;

发现查询的结果不再乱码了。

mysql 系统变量

  • character_set_server:默认的内部操作字符集
  • character_set_client:客户端来源数据使用的字符集
  • character_set_connection:连接层字符集
  • character_set_results:查询结果字符集
  • character_set_database:当前选中数据库的默认字符集
  • character_set_system:系统元数据(字段名等)字符集

tips

SET NAMES 'utf8'等价于

SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;

嗨,老铁,欢迎来到我的博客!

如果觉得我的内容还不错的话,可以关注下我在 segmentfault.com 上的直播。我主要从事 PHP 和 Java 方面的开发,《深入 PHP 内核》作者之一。

[视频直播] PHP 进阶之路 - 亿级 pv 网站架构的技术细节与套路 直播中我将毫无保留的分享我这六年的全部工作经验和踩坑的故事,以及会穿插着一些面试中的 考点难点加分点

评论列表