看到許多資料庫的設計對於中文字元都是選擇選用utf8_general_ci而非utf8_unicode_ci?utf8_general_ci和utf8_unicode_ci的差異並不大:utf8_unicode_ci校對更準確,utf8_general_ci速度比較快。它們的差異主要在德語和法語上,對於準確性utf8_general_ci足夠了,所以一般選用utf8_general_ci。
詳細說明如下:
utf8_unicode_ci的最主要的特色是支持擴展,即當把一個字母看作與其它字母組合相等時。例如,在德語和一些其它語言中‘ß’等於‘ss’。
utf8_general_ci是遺留的 校對規則,不支援擴充。它僅能夠在字元之間進行逐一比較。這表示utf8_general_ci校對規則的比較速度很快,但與使用utf8_unicode_ci的 校對規則相比,比較正確性較差)。
兩個校對規則的差異是,對於utf8_general_ci下面的等式成立:
ß = s
## 但是,對於utf8_unicode_ci ss
因此對於德語和法語utf8_unicode_ci更準確,對於中文沒有必要。
#
以上是MYSQL中utf8_general_ci和utf8_unicode_ci的差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!