Mysql資料庫大小寫問題

2021-09-26 14:11:09 字數 735 閱讀 1314

select * from user where name = 『aaa』;

select * from user where name = 『aaa』;

以上兩條sql執行結果是一樣的。

以上兩條sql語句的執行結果是一樣的,發現mysql有時是不區分大小寫的。

如何區分大小寫以下是三種方式,本人親測

1:建庫的時候排序規則選擇utf8_bin,然後這個庫下面建的表預設是區分大小寫的。

utf8_bin:將字串中的每乙個字元用二進位制資料儲存,區分大小寫。

utf8_genera_ci:不區分大小寫,ci為case insensitive的縮寫,即大小寫不敏感。

utf8_general_cs:區分大小寫,cs為case sensitive的縮寫,即大小寫敏感。建表工具裡邊沒有,也不建議使用。

2:建表的時候每個欄位後加上binary 屬性後,該欄位區分大小寫

create table t(

a varchar(10) binary

);3:在需要的字段上做修改

alter table user modify column age varchar(255) binary

MySQL 資料庫大小寫的問題

後端開發,會時不時地和資料庫打交道,mysql 資料庫作為開源資料庫,市場占有率相當高,很有研究和學習的價值。在之前的部落格中也提到了 mysql 資料庫的一些常用的操作和介紹,在這裡聊一聊資料庫大小寫的問題。mysql 開發過程中有可能會新增外來鍵,遇到問題不妨先看看字段大小寫是否匹配。mysql...

MySql資料庫大小寫敏感問題

在mysql中,資料庫對應資料目錄中的目錄。資料庫中的每個表至少對應資料庫目錄中的乙個檔案 也可能是多個,取決於儲存引擎 因此,所使用作業系統的大小寫敏感性決定了資料庫名和表名的大小寫敏感性。這說明在大多數unix中資料庫名和表名對大小寫敏感,而在windows中對大小寫不敏感。乙個顯著的例外情況是...

mysql 資料庫表名大小寫問題

lower case table names 1 原來linux下的mysql預設是區分表名大小寫的,通過如下設定,可以讓mysql不區分表名大小寫 1 用root登入,修改 usr my.cnf 2 在 mysqld 節點下,加入一行 lower case table names 1 3 重啟my...