MySQL 表名大小寫問題

2021-09-26 05:05:51 字數 559 閱讀 3404

資料庫名與表名的規則相同;列名、索引、儲存過程、觸發器名在任何平台都不區分大小寫。

檢視資料庫大小寫敏感設定:

show variables like 'lower_case_table_names';

取值及含義:

0:表名按照指定的大小寫儲存,查詢的時候區分大小寫;

1:表名儲存小寫,查詢的時候都轉成小寫查詢(即不區分大小寫);

2:表名按照指定的大小寫儲存,查詢的時候都轉成小寫查詢;

預設:linux預設值0,windows 預設為1,阿里雲rds 預設為1

修改(修改完需要重啟mysql:systemctl restart mysqld):

windows下:

找到mysql安裝目錄下my.ini檔案,在檔案後最後新增lower_case_table_names=1

linux下:

在/etc/ 目錄下 my.cnf檔案,在檔案後最後新增lower_case_table_names=1

將lower_case_table_names 修改為1之前,需要將舊的表名轉換為小寫,否則該錶無法查詢,無法刪除。

MySql表名的大小寫問題

mysql在linux下資料庫名 表名 列名 別名大小寫規則是這樣的 1 資料庫名與表名是嚴格區分大小寫的 2 表的別名是嚴格區分大小寫的 3 列名與列的別名在所有的情況下均是忽略大小寫的 4 變數名也是嚴格區分大小寫的 mysql在windows下都不區分大小寫。所以在不同作業系統中為了能使程式和...

MySQL表名大小寫的問題

問題現象 在windows系統中,有乙個mysql資料庫要遷移到linux系統中。在linux系統中安裝好了mysql之後,使用預設配置可以啟動資料庫。把windows系統中的mysql資料庫匯入之後,發現應用程式讀取不到資料,找不到表。使用show tables命令檢視,發現在windows系統中...

mysql 表名大小寫敏感問題

已有表 user select from user 可以查出來 select from user 報user不存在 這在一些orm框架裡可能會產生問題,比如預設使用大寫的表名,導致找不到表或者報錯 mysql表名大小寫再linux環境預設為敏感的 show variables like lower ...