搜索|收藏|地图|订阅|图片|论坛|商城

深入剖析MySQL数据库字符集的出错现象

来源:互联网 编辑:若水 时间:2008-03-19

首先,我们来看一下错误示例:

 

Illegal mix of collations (gbk_chinese_ci,IMPLICIT) 
and (gbk_bin,IMPLICIT) for operation '=', 
SQL State: HY000, Error Code: 1267

 

 

 

 

 

原因:

 

 

数据库的编码与建表时的编码不一样;

 

 

处理方法:

 

 

如果安装MySQL时设置的编码为jbk,那么建表时可以用下面的方法处理:

 

CREATE TABLE `teachers` (
id` int(11) NOT NULL default '0',
name` varchar(20) default NULL,
password` varchar(20) default NULL,
department_id` int(11) default NULL,
PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=gbk;

也可以用下面的方法:

 

CREATE TABLE `teachers` (
id` int(11) NOT NULL default '0',
name` varchar(20) default NULL,
password` varchar(20) default NULL,
department_id` int(11) default NULL,
PRIMARY KEY  (`id`)
) ;
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?