2010年4月8日 星期四

Linux下mysql大小寫問題

1、Linux下mysql安裝完後是默認:區分表名的大小寫,不區分列名的大小寫;


2、用root帳號登錄後,在/etc/my.cnf 中的[mysqld]後添加添加lower_case_table_names=1,重啟MYSQL服務,這時已設置成功:不區分表名的大小寫;




lower_case_table_names參數詳解:


lower_case_table_names = 0


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


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


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


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


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


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


MySQL在Windows下都不區分大小寫。


3、如果想在查詢時區分欄位值的大小寫,則:欄位值需要設置BINARY屬性,設置的方法有多種:


A、創建時設置:


CREATE TABLE T(


A VARCHAR(10) BINARY


);


B、使用alter修改:


ALTER TABLE `tablename` MODIFY COLUMN `cloname` VARCHAR(45) BINARY;


C、mysql table editor中直接勾選BINARY項。

沒有留言:

張貼留言