Mysql 表名大小寫問題

嫌疑人X的解憂雜貨店發表於2018-07-12

今天在開發中遇到這麼個問題,將連線的資料庫改為伺服器上的時候(伺服器是Linux系統的),程式跑起來後一直出錯,總提示資料庫的表找不到,

而開啟資料庫看該表明明是存在的,在我的印象中MySQL資料是不區分大小寫的,後來查資料才發現,在Linux系統中MySQL預設是嚴格區分大小

寫的,可以在配置檔案中新增配置,

用root帳號登入後,在/etc/my.cnf 中的[mysqld]後新增新增lower_case_table_names=1,重啟MYSQL服務,這時已設定成功:不區分表名的大小寫(操作時,應當先刪除原有的資料庫,設定之後,重啟mysql服務,然後重新建立資料庫,否則會報錯

ERROR 1010 (HY000): Error dropping database

其中 0:區分大小寫,1:不區分大小寫 

原因:MySQL在Linux下資料庫名、表名、列名、別名大小寫規則是這樣的: 

   1、資料庫名與表名是嚴格區分大小寫的; 

   2、表的別名是嚴格區分大小寫的; 

   3、列名與列的別名在所有的情況下均是忽略大小寫的; 

   4、變數名也是嚴格區分大小寫的;

相關文章