mysql补充(1)校对集utf8_unicode_ci与utf8_general_ci
創建數據庫并設置編碼utf-8 多語言(補充1 2)
create database mydb default character set utf8 collate utf8_general_ci;utf8_bin:將字符串中的每一個字符用二進制數據存儲,區分大小寫。
utf8_genera_ci:不區分大小寫,ci為case insensitive的縮寫,即大小寫不敏感。
utf8_general_cs:區分大小寫,cs為case sensitive的縮寫,即大小寫敏感。
(在5.6.10版本中,以上命令執行失敗,不支持utf8_genral_cs。)
?
utf8_unicode_ci:校對規則僅部分支持Unicode校對規則算法,一些字符還是不能支持。不能完全支持組合的記號。
utf8_general_ci:是一個遺留的 校對規則,不支持擴展,它僅能夠在字符之間進行逐個比較。
這意味著utf8_general_ci校對規則進行的比較速度很快,但是與使用 utf8_unicode_ci的校對規則相比,比較正確性較差。
?
Mysql中校對集utf8_unicode_ci與utf8_general_ci的區別說明
Mysql中的排序規則utf8_unicode_ci、utf8_general_ci的區別總結
應用上的差別:
1、對于一種語言僅當使用utf8_unicode_ci排序做的不好時,才執行與具體語言相關的utf8字符集校對規則。例如,對于德語和法語,utf8_unicode_ci工作的很好,因此不再需要為這兩種語言創建特殊的utf8校對規則。
2、utf8_general_ci也適用與德語和法語,除了‘?’等于‘s’,而不是‘ss’之外。如果你的應用能夠接受這些,那么應該使用 utf8_general_ci,因為它速度快。否則,使用utf8_unicode_ci,因為它比較準確。
用一句話概況上面這段話:utf8_unicode_ci比較準確,utf8_general_ci速度比較快。通常情況下 utf8_general_ci的準確性就夠我們用的了,在我看過很多程序源碼后,發現它們大多數也用的是utf8_general_ci,所以新建數據 庫時一般選用utf8_general_ci就可以了。
轉載于:https://www.cnblogs.com/straybirds/p/6267711.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的mysql补充(1)校对集utf8_unicode_ci与utf8_general_ci的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么从光盘拷到u盘里 拷贝光盘文件到U盘
- 下一篇: 深入基础(一)模块化