“如何运作”;“设置名称”;mysql中的查询

“如何运作”;“设置名称”;mysql中的查询,mysql,encoding,Mysql,Encoding,我知道这个问题 设置名称utf8 适用于数据库和客户端之间的同步编码。 此查询以正确的编码设置三个数据库变量 字符集连接 字符集结果 字符集客户端 但是,当我在数据库中手动设置这些变量的utf8值,并在没有“set NAMES utf8”的情况下进行“select”查询时,它返回了不正确的符号。 有人可以解释为什么手动在数据库中设置变量不起作用,但“设置名称”查询工作得很完美你还必须考虑客户端编码设置。我猜TrimeStIsClient变量包含客户端编码。手册上说它们是相同的。您的特定客户是

我知道这个问题

设置名称utf8

适用于数据库和客户端之间的同步编码。 此查询以正确的编码设置三个数据库变量

  • 字符集连接
  • 字符集结果
  • 字符集客户端
但是,当我在数据库中手动设置这些变量的utf8值,并在没有“set NAMES utf8”的情况下进行“select”查询时,它返回了不正确的符号。
有人可以解释为什么手动在数据库中设置变量不起作用,但“设置名称”查询工作得很完美

你还必须考虑客户端编码设置。我猜TrimeStIsClient变量包含客户端编码。手册上说它们是相同的。您的特定客户是否可能不完全尊重
字符集.
变量中的直接更改?我不太清楚。但我猜客户对数据库中这些变量的变化漠不关心。他走自己的路去设置。也许我错了,你把变量的意思搞错了。服务器永远不能更改客户端的内部编码。客户是独立的,可以做自己想做的事情。该变量仅定义服务器假定为客户端编码的内容。这是不同的。客户端有自己的配置和选项。