欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

【MySQL 04】命令行查询乱码问题

程序员文章站 2022-05-11 09:00:55
...
首先,将乱码显示显式出来,主要是中文乱码:

【MySQL 04】命令行查询乱码问题

第一步:找到安装mysql的目录找到 my.ini 文件;

【MySQL 04】命令行查询乱码问题

第二步:使用记事本打开my.ini文件,将默认编码设置为utf-8:

【MySQL 04】命令行查询乱码问题

第三步:在mysql数据库cmd中输入:show variables like’%char%’;

【MySQL 04】命令行查询乱码问题

第四步:改变原有数据库的编码方式:

【MySQL 04】命令行查询乱码问题

第五步:改变后的编码方式:

【MySQL 04】命令行查询乱码问题

第六步:重新查询:

【MySQL 04】命令行查询乱码问题

MySQL中涉及的几个字符集

character-set-server/default-character-set:服务器字符集,默认情况下所采用的。
character-set-database:数据库字符集。
character-set-table:数据库表字符集。
优先级依次增加。所以一般情况下只需要设置character-set-server,而在创建数据库和表时不特别指定字符集,这样统一采用character-set-server字符集。
character-set-client:客户端的字符集。客户端默认字符集。当客户端向服务器发送请求时,请求以该字符集进行编码。
character-set-results:结果字符集。服务器向客户端返回结果或者信息时,结果以该字符集进行编码。
在客户端,如果没有定义character-set-results,则采用character-set-client字符集作为默认的字符集。所以只需要设置character-set-client字符集。

要处理中文,则可以将character-set-server和character-set-client均设置为GB2312,如果要同时处理多国语言,则设置为UTF8。

关于MySQL的中文问题

解决乱码的方法是,在执行SQL语句之前,将MySQL以下三个系统参数设置为与服务器字符集character-set-server相同的字符集。
character_set_client:客户端的字符集。
character_set_results:结果字符集。
character_set_connection:连接字符集。
设置这三个系统参数通过向MySQL发送语句:set names gb2312

以上就是 【MySQL 04】命令行查询乱码问题的内容,更多相关内容请关注PHP中文网(www.php.cn)!