MySQL Client工具查询中文出现问号解决办法

首先说明一下我的运行环境:Windows10系统、MariaDB。其中MariaDB里面的10.3.13和5.5.47这两个版本都测试过

大神请留步,已经为你们写出来了,就两点。

步骤:

  1. 修改编码为UTF8(chcp 65001)
  2. SET NAMES UTF8;

注意:如果关闭此窗口后就会恢复默认的GBK

看不懂的请往下继续看,有详细图文介绍

完整MySQL语句如下

//打开MySQL Client工具,输入数据库密码
Enter password: ****
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 8
Server version: 10.3.13-MariaDB mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
//创建数据库user,字符设置为UTF8
MariaDB [(none)]> CREATE DATABASE user CHARACTER SET UTF8;
Query OK, 1 row affected (0.002 sec)
//使用user
MariaDB [(none)]> USE user;
Database changed
//创建 表 u_test () 引擎=INNODB 字符集=UTF8
MariaDB [user]> CREATE TABLE u_test (name VARCHAR(20),age INT,password CHAR(20))ENGINE=INNODB CHARSET=UTF8;
Query OK, 0 rows affected (0.016 sec)
//插入 到 u_test 值()
MariaDB [user]> INSERT INTO u_test VALUES('张三',18,'abc123');
Query OK, 1 row affected (0.004 sec)
//选择u_test里面*(*代表所有)数据
MariaDB [user]> SELECT * FROM u_test;
+------+------+----------+
| name | age  | password |
+------+------+----------+
| ???? |   18 | abc123   |
+------+------+----------+
1 row in set (0.000 sec)

再用安装MariaDB自带的工具HeidiSQL查询看看

HeidiSQL工具里面显示正常,通过我自己的瞎琢磨是Windows10 CDM窗口编码的问题

果然让我猜对了,CDM默认是GBK编码,在网上找到了修改这个编码的方法

chcp 65001

 

方法如下:

MariaDB [user]> select * from u_test;
+------+------+----------+
| name | age  | password |
+------+------+----------+
| ???? |   18 | abc123   |
| lisi |   26 | poiuyt   |
+------+------+----------+
2 rows in set (0.000 sec)

MariaDB [user]> Ctrl-C -- exit!
Bye

C:\Program Files\MariaDB 10.3\bin>chcp 65001

 

输入 chcp 65001

现在查询直接从????问号变成了啥都没有了

不要捉急,输入这个就行了

SET NAMES UTF8;

 

这几天因为这个问题在网上找了好多,都是一模一样的复制粘贴过来的解决办法,有些还行,至少是自己一边一边测试的,另外一些人就直接原封不动的复制粘贴,实在不敢恭维。

他们的方法都是有用的,但针对于我所遇到的情况,无法完全解决。更加是因为自己傻逼了,等自己解决之后想好好的扇自己一巴掌,就是编码的问题我搞了这么久,服了服了。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值