Golang mysql客户端DB.Query方法没有重新编写utf-8编码字符

时间:2017-10-25 03:28:16

标签: mysql go utf-8

我有mysql表,其中包含存储在某些列中的UTF-8字符。该表是使用DEFAULT CHARSET = utf8;

创建的

如果我手动运行select语句,我可以看到UTF-8字符,但如果我使用golang客户端并使用DB.Query方法,那么我看到字符都是乱码!

此外,插件也是从golang客户端完成的。为什么插件很好并且读取使其乱码? 在进行查询时,我无法看到任何用于设置字符集的参数。我错过了什么?

1 个答案:

答案 0 :(得分:0)

因此,当行插入数据库时​​,客户端字符集为 latin1 。而golang客户端默认使用utf8。使用utf8再次插入所有行,现在golang utf8客户端似乎正在读取字符!

对于遇到类似问题的其他人:

以下命令告知当前配置

  

的MySQL>状态

以下命令设置客户端字符集。在插入语句之前运行它。

  

的MySQL>设置名称utf8