當我創建數據庫時,我要求選擇Default Collate,當我創建一個表時,我要求選擇Collate。 utf8_general_ci或...拉丁...?什麼是區分哪一個是正確的基礎?MySQL - 整理
4
A
回答
12
A collation確定字符的排序順序,它是用於比較字符集中字符的一組規則。任何給定character set總是至少有一個排序規則。歸類名CI,CS,和倉的端部是指不區分大小寫,的情況下分別敏感和二進制。像utf8_bin
這樣的二進制排序規則通常也是區分大小寫的,因爲它會根據字符串的數值進行二進制字符串比較。
這意味着如果您想要製作不區分大小寫的選擇查詢,其中a和A沒有區別,您應該使用以ci結尾的排序規則。如果要製作區分大小寫的查詢,其中a和A不同,則應使用以cs或bin結尾的歸類。
如果沒有選中,則應用標準級別。有在MySQL整理各種層次,他們可以例如通過
mysql> show variables like '%collation%';
+----------------------+-------------------+
| Variable_name | Value |
+----------------------+-------------------+
| collation_connection | utf8_general_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
+----------------------+-------------------+
+1
謝謝。對於第二個例子,我認爲應該是'cs'。 – lunar 2012-04-05 15:58:37
+0
是的,我修復了錯字 – 0x4a6f4672 2013-03-08 11:11:47
相關問題
- 1. mysql整理時的sphinx整理utf8_unicode_ci
- 2. MySQL整理問題
- 3. MySQL - 最佳整理?
- 4. MySQL全文整理/相關
- 5. MySQL錯誤未知整理
- 6. MySQL變更整理鑑於
- 7. MySQL排序順序 - 整理?
- 8. MySQL的非法混合整理當一切都整理相同
- 9. MySQL默認字符集和整理
- 10. MySQL整理俄語和芬蘭語
- 11. MySQL的Windows 2003碎片整理硬盤
- 12. 瞭解mysql字符集和整理
- 13. Mysql轉換表,整理不變
- 14. 管理MySQL中的完整SQL事務
- 15. 創建自定義MySQL整理
- 16. 使用MySql整理的問題(瘋狂)
- 17. 搜索的最佳MySQL整理
- 18. mysql整理latin1_german1_ci不按順序通過
- 19. MySQL:我應該打擾整理嗎?
- 20. 單查詢MySQL的整理hasAndBelongsToMany數據
- 21. MySQL整理和PHP字符集衝突
- 22. 非法混用整理mysql錯誤?
- 23. 整理和MySQL的不工作
- 24. [MySQL]:什麼是整理方法?
- 25. 整數代理鍵?
- 26. Sql 2008整理
- 27. 整理問題
- 28. 整理值
- 29. oracle sql整理
- 30. 整理jQuery
顯示* _CI是不區分大小寫的,這意味着,如果你這樣做'WHERE像場「%ABC%」,這將匹配BABC或BABC。 – 2012-04-05 15:27:04
現在你通常需要utf8,所以你可以存儲各種腳本,而不僅僅是拉丁字母。確保你的客戶端應用程序(php,無論)也使用相同的編碼。 – knittl 2012-04-05 15:27:30
謝謝。是什麼讓你選擇ci或cs?我想不出任何CS的生活的例子.. – lunar 2012-04-05 15:47:45