您的位置:首页技术文章

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

浏览:67日期:2023-10-22 15:38:28

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

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

标签: MySQL 数据库