mysql ERROR 1366 (HY000)

我是在ubuntu下使用得mysql.html

当执行下面语句的时候mysql

mysql>insert into role(code,name) values(200,'管理员');linux

出现错误 (ERROR 1366 (HY000))。web

查看Mysql默认字符集的相关设置:sql

mysql> SHOW VARIABLES LIKE 'character%';
+--------------------------+---------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir        | /usr/share/mysql/charsets/ |数据库

若是出现上述状况则须要更改数据库编码:我用到的方法为:ubuntu

mysql> alter database 数据库名 charset utf8;
mysql> show variables like '%char%';编码

+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+spa

可是此时再次执行插入命令仍旧出现上述错误,经查找发现:还要更改role表的name的字符集.net

mysql>alter table tb_mgr_role modify name varchar(32) charset utf8

参考博文:

http://blog.csdn.net/webnoties/article/details/17219167

http://blog.sina.com.cn/s/blog_673faff10100qbyh.html

http://www.linuxidc.com/Linux/2011-04/34843.htm

相关文章
相关标签/搜索