首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

解决ActiveRecord:StatementInvalid (Mysql2:Error: Incorrect string value

2013-10-31 
解决ActiveRecord::StatementInvalid (Mysql2::Error: Incorrect string value:status show variables lik

解决ActiveRecord::StatementInvalid (Mysql2::Error: Incorrect string value:
status show variables like '%char%'

?发现数据库上的charset server是latin类型的,于是乎改为utf8 ,这个要修改配置文件的,修改以后重启,发现charset确实改了,但是还是出错。去网上查了一下,又说rails4.0 的问题的,又回所mysql的问题的。但是感觉和我的情况不相似。怎么办?突然想到前几天作django的时候遇到的一个问题,于是想到会不会是collation的问题呢。于是看了一下

show table status

果真发现问题了,原来是collations的问题阿。下面就是把数据库和表的collation改了以下,提供一个笨的方法:

ALTER DATABASE 数据库的名字 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci//这两条每个数据表都要执行一次的。ALTER TABLE  表的名字 DEFAULT CHARACTER SET utf8;ALTER TABLE   表的名字 site CONVERT TO CHARACTER SET utf8;

??

然后运行,搞定了

?

?

热点排行