1 回答

TA貢獻1835條經(jīng)驗 獲得超7個贊
1、mysql默認情況下是否區(qū)分大小寫,使用show Variables like '%table_names'查看lower_case_table_names的值,0代表區(qū)分,1代表不區(qū)分。
2、mysql對于類型為varchar數(shù)據(jù)默認不區(qū)分大小寫,但如果該字段以“*_bin”編碼的話會使mysql對其區(qū)分大小寫。
3、mysql對于字段名的策略與varchar類型數(shù)據(jù)相同。即:默認不區(qū)分大小寫,但如果該字段是以“*_bin”編碼的話會使mysql對其區(qū)分大小寫。
4、mysql對于表名的策略與varchar類型數(shù)據(jù)相同。即:默認不區(qū)分大小寫,但如果該表是以“*_bin”編碼的話會使mysql對其區(qū)分大小寫。
5、如果按照第一項查看lower_case_table_names的值為0,但需要讓mysql默認不區(qū)分大小寫的話,需要在mysql配置文件中添加參數(shù)并重啟mysql數(shù)據(jù)庫。mysql配置文件的修改內(nèi)容如下:
[mysqld]
...
lower_case_table_names = 1
6、注意:表和字段的編碼盡量繼承數(shù)據(jù)庫的編碼(不明顯指定即繼承),以免引起混亂。
LINUX下的MYSQL默認是要區(qū)分表名大小寫的 ,而在windows下表名不區(qū)分大小寫
讓MYSQL不區(qū)分表名大小寫的方法其實很簡單:
1.用ROOT登錄,修改/etc/my.cnf
2.在[mysqld]下加入一行:lower_case_table_names=1
3.重新啟動數(shù)據(jù)庫即可
添加回答
舉報