通常是多表或跨库表查询致使出现的问题,其缘由是两张表的字符集不同致使的,那为何两张表的字符集会不同?这是因为架构师或者开发人员在建表的时候不当心选错字符集的缘由致使的。架构
那好咱们把两张表(或两个库的关联的两张表)的字符集更改成同样就能够了,是的咱们改过来发,发现变态的MYSQL仍是同样的错误!!!工具
我在网上查了一些资料说的感受很全,但太理论化且不实用(就是解决不了问题)。spa
根据上面的分析咱们想两张表的字符集改成同样为目的确定是能够的,而后我在想是否是字段也存在字符集的概念,可是可恶的是工具不显示字段的字符集(缘由是字符集是根据表的字符集来的)。开发
而后我在想MYSQL的存储方式是文件形式,那是否是字符集更改以前的内容仍是存以前的字符集呢?查询
咱们采用此命令注释
SHOW CREATE TABLE `表名`;文件
查看,果真发现关联列名的字符集跟当前的字符集不同,那就简单了,咱们经过命令的方式将此字段强制更改成当前的默认的字符集便可。字符集
ALTER TABLE `表名` CHANGE `列名` `列名` VARCHAR(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '注释';co
好吧,就这么简单,解决不了问题的请留言。架构师