【数据库复习笔记】3.关于在cmd中中文乱码问题

首先声明:此文章所用数据库均为捏造,如有雷同纯属巧合。

今天在使用cmd操作数据库时遇到的一个问题,就是cmd的默认字符集为936,即GBK格式。而我所用的数据库均保存为utf8格式,然后出现了如下问题:
测试图

我首先想到的是使用chcp 65001命令来修改cmd的代码页,结果如下所示:
测试图
输出是正常了,但是搜索毫无改进是不是?后来在网上搜了搜,发现我们修改的代码页并不能从根本上解决这个问题。
我们的初衷是保证cmd客户端和MySQL两者编码一致,而cmd默认为936,MySQL一般为utf8,我们之前试的都是修改cmd的字符编码,那能不能让MySQL的返回数据的编码变为utf8呢?显然是可以的。
测试图
使用set charset gbk;可以发现显示结果没有问题,且布局显然与之前的乱码相同,比较丑陋,但是毕竟问题解决了不是?注意,这个更改是临时的,即退出该cmd后就无效了,下次使用仍需输入。
PS:set charset gbk;为两条指令组合而成,即set character_set_results = gbk;和set character_set_client=gbk;前条指令告诉MySQL返回给我的结果为gbk格式,后条指令告诉MySQL我给的操作命令为gbk格式。

测试图

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值