MySQL utf8_general_ci 與 utf8mb4_general_ci 有什麼差異?

MySQL 的 utf8_general_ci 與 utf8mb4_general_ci 都是不區分大小寫的排序規則,但兩者在儲存和比較字元時有不同之處。

utf8_general_ci 只支援 3 個字節的字元,而 utf8mb4_general_ci 支援 4 個字節的字元。這意味著 utf8mb4_general_ci 可以儲存更多的字元,包括一些 utf8_general_ci 無法儲存的字元。

此外,utf8mb4_general_ci 在比較字元時,會使用 Unicode 標準來比較,而 utf8_general_ci 則使用 ASCII 標準來比較。這意味著 utf8mb4_general_ci 在比較多語言的字元時,會更準確。

因此,utf8mb4_general_ci 是比 utf8_general_ci 更現代和更先進的排序規則。如果你需要儲存和比較大量的字元,或需要比較多語言的字元,那麼 utf8mb4_general_ci 是更好的選擇。

分享於 2023-08-07