C++输出MySQL里的中文乱码,我认为是MySQL默认GBK的问题
set character_set_client=utf8
set character_set_connection=utf8
set character_set_results=utf8
上面的命令试过了,只是当前窗口有效,重开无效
my.ini client增加过default_character-set=utf8之类的了
怎么永久设置 上面三个是utf8?
set后面加persist ,比如 set persist character_set_results=utf8
set后面加GLOBAL ,比如 set GLOBAL character_set_results=utf8
mysql应该是在win下安装的对吧,更改一下my.cnf 配置文件就可以了。
如何找到my.cnf 呢,
在cmd窗口输入:mysql --help
看到有一段话:Default options are read from the following files in the given order:
我的是:
C:\WINDOWS\my.ini C:\WINDOWS\my.cnf C:\my.ini C:\my.cnf C:\88-mysql\mysql-8.0.26-winx64\my.ini C:\88-mysql\mysql-8.0.26-winx64\my.cnf
逆序第一个一般就是你的配置文件的位置,在里面变更或者新增以下文本:
[mysqld]
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
然后重启数据库即可,service mysql restart
希望可以帮助到你 :)