美文网首页
SQL操作 -- 转换器

SQL操作 -- 转换器

作者: 飞猪的浪漫 | 来源:发表于2023-11-27 21:11 被阅读0次

2.查看当前电脑使用的字符集: 

打开电脑黑窗口(CMD),接着点击鼠标右键,然后选择属性,并查看“选项”这一栏。通过上图可以知道:CMD中输入文字使用的字符编码是GBK(即电脑客户端字符集是GBK)。

客户端client输入的字符,都是采用GBK编码的。mysql服务器存储的字符又是UTF8编码的。

-- 查看数据库支持的所有的字符集(这句命令自己下去操作)。

mysql> show character set;

-- 查看系统当前状态,里面可以看到部分字符集设置。

mysql> status;

-- 查看系统字符集 设置,包括所有的字符集设置

mysql> show variables like '%char%';

mysql> #要想不乱码,需要指定客户端的编码,让连接器不理解错误。

mysql> #这样就不会存入错误数据。

mysql> #往回取数据的时候,还要告诉连接器,如果你从服务器返回,你应该给我转成什么格式。

mysql> #因此,一共需要设置3个参数:

mysql> #1、客户端发送的编码;

mysql> #2、连接器使用的编码;

mysql> #3、返回数据的编码;

具体的操作:

ysql> #当前的情况是:客户端是GBK,服务器最终存储的是UTF8。

mysql> #因此,你就要明确告诉服务器,我的客户端是GBK的。

mysql> #命令如下:

mysql> set character_set_client=gbk;

Query OK, 0 rows affected (0.00 sec)

mysql> #再告诉连接器,使用UTF8。

mysql> #命令如下:

mysql> set character_set_connection=utf8;

Query OK, 0 rows affected (0.00 sec)

mysql> #再告诉,如果你返回值给我看的话,也请返回GBK。

mysql> #命令如下:

mysql> set character_set_results=gbk;

Query OK, 0 rows affected (0.00 sec)

方式一:

1)设置客户端的字符集

set character_set_client=gbk;

2)设置连接器的字符集

set character_set_connection=utf8;

3)设置返回结果的字符集

set character_set_results=gbk;

方式二:

当客户端、连接器、返回值的字符集相同,并且都是gbk的时候,我们可以采取如下的简写方式:

set names gbk;

这就话其实包含了三层意思:

set character_set_client=gbk;

set character_set_connection=gbk;

set character_set_results=gbk;

① 连接器的作用

连接客户端与服务端,进行字符集的转换。连接器有这种自动转换的功能。

② 连接器的工作流程

Ⅰ 客户端的字符先发给连接器,连接器选择一种编码将其转换(转换之后的编码,与连接器的编码格式一致),进行临时存储。

Ⅱ 接着,连接器再次转换成服务器需要的编码,并最终存储在服务器中。

Ⅲ 然后,服务器返回的结果,再次先通过连接器,连接器将其转化为与客户端一致的字符集,就可以在客户端正常显示了。

相关文章

网友评论

      本文标题:SQL操作 -- 转换器

      本文链接:https://www.haomeiwen.com/subject/fkzzwdtx.html