Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLICIT) for operation '='
过去碰到过乱码问题,现在又碰到个字符集问题。
----------------------------------
当前,utf8_unicode_ci校对规则仅部分支持Unicode校对规则算法。一些字符还是不能支持。并且,不能完全支持组合的记号。这主要影响越南和俄罗斯的一些少数民族语言,如:Udmurt 、Tatar、Bashkir和Mari。
utf8_unicode_ci的最主要的特色是支持扩展,即当把一个字母看作与其它字母组合相等时。例如,在德语和一些其它语言中‘ß’等于‘ss’。
utf8_general_ci是一个遗留的 校对规则,不支持扩展。它仅能够在字符之间进行逐个比较。这意味着utf8_general_ci校对规则进行的比较速度很快,但是与使用utf8_unicode_ci的 校对规则相比,比较正确性较差)。
例如,使用utf8_general_ci和utf8_unicode_ci两种 校对规则下面的比较相等:
Ä = A
Ö = O
Ü = U
两种校对规则之间的区别是,对于utf8_general_ci下面的等式成立:
ß = s
但是,对于utf8_unicode_ci下面等式成立:
ß = ss
对于一种语言仅当使用utf8_unicode_ci排序做的不好时,才执行与具体语言相关的utf8字符集 校对规则。例如,对于德语和法语,utf8_unicode_ci工作的很好,因此不再需要为这两种语言创建特殊的utf8校对规则。
utf8_general_ci也适用与德语和法语,除了‘ß’等于‘s’,而不是‘ss’之外。如果你的应用能够接受这些,那么应该使用utf8_general_ci,因为它速度快。否则,使用utf8_unicode_ci,因为它比较准确
分享到:
相关推荐
主要介绍了MySQL 编码utf8 与 utf8mb4 utf8mb4_unicode_ci 与 utf8mb4_general_ci的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '= 所以,自己把还没产生数据的表都删除,重新建立ut8表 此文件sql语句都是没产生数据的表,直接可以用py或者...
今天帮同事处理一个SQL(简化过后的)执行...ERROR 1267 (HY000): Illegal mix of collations (utf8_general_ci,COERCIBLE) and (latin1_swedish_ci,NUMERIC) for operation ‘>’ 乍一看挺莫名其妙的,查了下手册,
swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=' 这个错误,所以在stackover flow 中找到了对这个数据库,以及数据表中进行更改字符集的方法。 SET collation_connection
mysql数据库和中文支持很不友好,经常见到“Illegal mix of collations for operation”错误,该如何解决呢?下面小编给大家带来了mysql数据库中涉及到哪些字符集及彻底解决中文乱码的解决方案,非常不错,一起看看...
MySQL多表join时报错如下:[Err]1267 – Illegal mix of collations(utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLICIT) for operation ‘= 就是说两个表的排序规则(COLLATION)不同,无法完成比较。...
ERROR 1267 (HY000): Illegal mix of collations (utf8_general_ci,COERCIBLE) and (latin1_swedish_ci,NUMERIC) for operation '>' 乍一看挺莫名其妙的,查了下手册,发现有这么一段: The language us
学习心得使用mpvue学习完成一次完整的小程序开发,...0900_ai_ci,IMPLICIT) and (utf8mb4_unicode_ci,IMPLICIT) for operation \'=\''查阅之后明白是book表中的排序规则不一样在命令行中输入ALTER TABLE books CONVERT
illegal key size org.apache.ws .security.components.crypto.Merlin cannot create instance
Undocumented_Secrets_of_MATLAB_Java_Programming.part2 Undocumented_Secrets_of_MATLAB_Java_... As far as I know, everything in this book is legal and within the bounds of the Matlab license agreement.
Undocumented_Secrets_of_MATLAB_Java_Programming.part3 Undocumented_Secrets_of_MATLAB_Java_... As far as I know, everything in this book is legal and within the bounds of the Matlab license agreement.
微信支付时加密会遇到Illegal key size的错误 需要升级jdk8的底层jar文件 下载,解压后覆盖到\jdk1.8.0_131\jre\lib\security\下的同名文件即可 jdk 1.8.0_161之后应该就不再有这个问题了
复制并覆盖%JAVA_HOME%/jre/lib/security下的local_policy.jar 和 US_export_policy.jar
中国爬虫违法违规案例汇总 本项目用来整理所有中国大陆爬虫开发者涉诉与违规相关的新闻、资料与法律法规。致力于帮助在中国大陆工作的爬虫开发者以及数据行业相关从业者了解我国相关法律,避免触碰数据合规红线。...
JDK8 环境下,处理微信退款回调时报错 Illegal key size or default parameters。 将local_policy.jar和US_export_policy.jar这两个文件替换%JRE_HOME%\lib\security和%JDK_HOME%\jre\lib\security下原来的文件,...
Mysql关联两张表时,产生错误提示Illegal mix of collations 1、先用工具把数据库、两张表的编码方式改变 2、这步很重要,需要改变字段的编码方式。 ALTER TABLE `表名` CHANGE `dev_chancode` `字段` VARCHAR(32) ...
今日遇到如下错误:java.security.InvalidKeyException: Illegal key size 因为美国法律限制,JAVA默认支持AES 128 Bit 的key, 如果你计划使用 192 Bit 或者 256 Bit key, java complier 会抛出 Illegal key size ...
spring boot 接入微信最完整demo,包含各种微信事件。
面向Linux平台的违规外联监控系统的主要架构和关键技术,郭峰,崔翔,为了保护涉密网络的安全,目前采取的主要措施是物理上的隔离。这种方法可以减少来自外部网络的安全威胁。然后,涉密网络内部同样