navicat执行带语法错误的sql,给出的报错信息不是英文,如标题所示,看着有点像法文。
方案一
在网上查解决方案,正好有小伙伴的版本和我一样,我也参照修改了my.ini,加了如下语句:
language=D:/wamp/bin/mysql/mysql5.6.17/share/english
文章链接在此
方案二
这是偶然情况下发现的,因为在运用方案一的时候,我错以为自己改过了斜杠的方向,结果可想而知。正是有上面的误会,我没有去仔细去看斜杠的方向,反而以为这个方案不适用。于是要来了2个同事的mysql设置文件作对比。虽然大家都配置不尽相同,但一时没发现什么端倪,突然眼睛扫到一个设置项:
lc-messages-dir=D:/wamp/bin/mysql/mysql5.6.17/share
# Change your locale here !
lc-messages=fr_FR
上面的目录不就是字符集存放的位置吗?还有locale不是本地化吗?这个本地化看简写是french没跑了。然后我把错误的language(D:\wamp\bin\mysql\mysql5.6.17\share)、lc-messages都注释掉了(ps.他们的设置并没有注释lc-messages),重启wamp,再执行,错误信息变成英文了。当然,如果加了上面的language就无需注释lc-messages=fr_FR。
ps.中间还有改过my.ini分别在下面那个设置项下加上:
[mysql]
default_character_set=uft8
[mysqld]
character_set_server=utf8
发现对报错信息的编码没有作用。