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

  • 来源: 互联网 作者: 若水   2008-03-18/17:50
  • 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`)
    ) ;

    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多