解决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;
??
然后运行,搞定了
?
?