问题: mysql 数据库, 表内字段不能插入中文字符。
解决方法:
一. (网上查到很多都都是这种,但对我无用)
打开终端,到mysql安装路径: cd /usr/local/mysql-5.6.19-osx10.7-x86_64/bin
登陆 :./mysql -u username -p
查看当前的设置:show variables like "%char%";
更改设置:SET character_set_database = utf8 ;
当时我发现作为以上操作以后,新建一个表,character set 仍然是 latin, 仍然插入不了中文。 (通过右键查看 table ->table inspector ->columns)
所以后来试了下更改配置文件的方法:
二. 参考链接 http://www.dedecms.com/knowledge/data-base/mysql/2012/0819/7421.html
配置方法如下:
1.拷贝/usr/local/mysql/support-files下的任意一个*.cnf文件到/etc/my.cnf;
2.在my.cnf文件的[client]后面添加一句default-character-set=utf8( 不是default_character_set=utf8[i][/i],这个配置我没有试过,不知道能不能成功),关键在这里的配置,在[mysqld]后面添加如下三句:
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci;
3.保存退出;
4.重新启动mysql服务器就可以。
以上步骤做完以后,新建的数据表的编码就会是utf8, 但是老的数据表不会自动改, 肯得自己去改下,请读者自己另外尝试。
另外附上 my.cnf 的代码: