通過 show character set 命令,妳查看的到的
collation 這個設置關系到 MySQL 中的 “英文字符大小寫不敏感” 問題。
::: tip
通過 show collation 命令,妳可以查看到 MySQL 支持的所有的 collation 。
:::
這裏的 _ci 指的是 Case Insensitive ,即 “大小寫不敏感” 。a 和 A 會在字符判斷中被當作壹樣。
例如,妳執行 select * from department where name = 'testing' ,可能會出現以下兩行數據:
治標的辦法是在查詢語句中使用 binary 關鍵字, binary 關鍵字可以加在兩處地方(效果壹樣):
binary 表示的是:以字符串的二進制數據為依據進行比較,這樣,比較的結果自然就是大小寫敏感的。
在指定 Charset( utf8 或 utf8mb4 )時,同時指定與之配套使用的 Collation 。
通過使用命令 show collation where Charset = '...' 可以查看 utf8 和 utf8mb4 對應的 Collation 。但是,可惜的是有 _ci ,卻沒有 _cs <small>(Case Sensitive,大小寫敏感)</small>的 Collation !
不過,有 utf8_bin 和 utf8mb4_bin 。
妳可以在建庫,或建表,或在列聲明中使用它們。例如: