根据MYSQL8文档:
有关字符集和客户端连接排序规则处理的几个问题可以用系统变量来回答:
为了确定这一点,服务器使用character_set_connection和collation_connection系统变量:
服务器将客户端发送的语句从character_set_client转换为character_set_connection。异常:对于具有介绍器(如_utf8mb4或_latin2 )的字符串文本,介绍程序确定字符集。参见第10.3.8节,“字符集引荐器”。
读了这句话后,我感到很困惑。文档是否想告诉我们,如果使用介绍器,介绍器将取代character_set_connection编码吗?
或者让我举一个具体的例子,执行select _gbk '中文';和执行select '中文';有什么区别吗?介绍器_gbk如何影响服务器对语句的字符集转换?
我希望有人能帮我解释一下官方描述的含义和我的例子,非常感谢。
参考链接:字符集连接
发布于 2020-07-13 17:34:05
select _gbk '中文'和select '中文'的区别在于,在select _gbk '中文'中,当从客户端传输到服务器时,'中文'被理解为位于GBK字符集中,而在select '中文'中,'中文'被理解为位于character_set_client中的字符集中。
https://stackoverflow.com/questions/62850167
复制相似问题