赞
踩
mysql错误1267的解决方法
每次转移到新的数据库,应用存储过程都会出现mysql 1267错误.如下提示:
Error: Illegal mix of collations(latin1_swedish_ci,IMPLICIT) and(gbk_chinese_ci,COERCIBLE) for operation ‘=’
这是一个编码错误.大概就是两种不同编码不能用’='来对比吧.
因为系统本身默认的编码是latin1_swedish_ci,每次用Navicat for MySQL转移数据库,他都没有吧数据库的编码等设置一同复制过去,于是就直接变成默认编码了.而变里面的是数据还是原来的gbk_chinese_ci编码,存储过程却用了latin1_swedish_ci,那肯定是不行的.于是把数据库编码改成gbk_chinese_ci问题就解决了.
在Navicat for MySQL里面修改就太简单了,右键-数据库属性,然后直接选编码就可以了.
大家通常用phpMyAdmin也可以修改编码,如果改了数据库编码还是不行,就要检查表里面每个字段的编码了.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。