电脑技术学习

讲解MySQL数据库字符集出错的解决方法

dn001
MySQL字符集出错的解决方法:

错误案例:

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`)
) ;