MySQL不區(qū)分大小寫配置方法
1.表內數據條件查詢不區(qū)分大小寫
MySQL 表內數據條件查詢不區(qū)分大小寫是因為排序規(guī)則的問題.
在MySQL中,InnoDB存儲引擎默認的字符集是utf8,utf8mb4等,這些字符集再存儲數據時沒有指定排序規(guī)則的話,會默認使用 utf8_general_ci或utf8mb4_general_ci 作為表的排序規(guī)則,那么該表內的數據講不區(qū)分大小寫,這兩種排序規(guī)則都是case-insensitive(不區(qū)分大小寫)的.
改為 utf8_bin 或者 utf8mb4_bin 是區(qū)分大小寫的
2. 表名字段名不區(qū)分大小寫
在MySQL中,表名和字段名默認是不區(qū)分大小寫的。這意味著在查詢和引用表和字段時,大小寫不會影響執(zhí)行結果。
例如,如果您創(chuàng)建了一個名為"mytable"的表,可以使用"SELECT * FROM mytable"或"SELECT * FROM MyTable"或"SELECT * FROM MYTABLE"等語句來查詢該表。MySQL將不區(qū)分這些語句中的大小寫。
如果您希望在MySQL中配置表名和字段名區(qū)分大小寫,可以使用以下步驟:
打開MySQL配置文件(通常是my.cnf或my.ini)。
在[mysqld]部分中添加以下行:
sql
lower_case_table_names=0
lower_case_table_names = 0:表名區(qū)分大小寫,且按照用戶指定存儲。
lower_case_table_names = 1:表不區(qū)分大小寫,使用小寫存儲。
lower_case_table_names = 2:表不區(qū)分大小寫,按照用戶指定存儲。
在不同系統(tǒng)上運行,會有不同的默認值

需要注意的是 在 Linux 系統(tǒng)中不支持設置為 2 當用戶設置為 2 時,將被強制改為 0。
保存并關閉配置文件。
重啟MySQL服務器。
這將使MySQL區(qū)分表名和字段名的大小寫。例如,如果您創(chuàng)建了一個名為"MyTable"的表,則只能使用"SELECT * FROM MyTable"來查詢該表,而使用其他大小寫形式的語句將無法執(zhí)行。
以上就是MySQL不區(qū)分大小寫配置方法的詳細內容,更多關于MySQL不區(qū)分大小寫配置的資料請關注腳本之家其它相關文章!
相關文章
CentOS下php使用127.0.0.1不能連接mysql的解決方法
這篇文章主要介紹了CentOS下php使用127.0.0.1不能連接mysql的解決方法,本文原因是SELINUX導致的連接失敗,需要的朋友可以參考下2015-01-01
centos 7系統(tǒng)下編譯安裝 mysql5.7教程
因為Mysql5.7的更新特性還是非常多,所以這篇文章就給大家介紹以下在centos上面編譯安裝mysql5.7的教程。本文給大家介紹的步驟還是相對來說比較詳細的,相信對大家具有一定的參考借鑒價值,有需要的朋友們可以參考借鑒,下面來一起看看吧。2016-11-11
如何解決MySQL5升級為MySQL8遇到的問題my.ini
這篇文章主要介紹了如何解決MySQL5升級為MySQL8遇到的問題my.ini,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-12-12
MySQL、Oracle與SQLServer三大數據庫語法全方位區(qū)別分析
不同的數據庫產品在語法上略有不同,這篇文章主要介紹了MySQL、Oracle與SQLServer三大數據庫語法全方位區(qū)別分析的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2026-03-03

