在 MySQL 中,數(shù)據(jù)庫和表對應(yīng)于那些目錄下的目錄和文件。因而,操作系統(tǒng)的敏感性決定數(shù)據(jù)庫和表命名的大小寫敏感。這就意味著數(shù)據(jù)庫和表名在 Windows 中是大小寫不敏感的,而在大多數(shù)類型的 Unix 系統(tǒng)中是大小寫敏感的。一個特例是 Mac OS X,當(dāng)缺省的 HFS+ 文件系統(tǒng)使用時。然而 Mac OS X 還支持 UFS 卷,那些在 Mac OS X 是大小寫敏感的就如他們在任一 Unix 上一樣。查看章節(jié) 1.8.3 MySQL 對 ANSI SQL92 的擴(kuò)展。
注意:盡管在 Windows 中數(shù)據(jù)庫與表名是忽略大小寫的,你不應(yīng)該在同一個查詢中使用不同的大小寫來引用一個給定的數(shù)據(jù)庫和表。下面的查詢將不能工作,因為它以 my_table 和 MY_TABLE 引用一個表:
mysql> SELECT * FROM my_table WHERE MY_TABLE.col=1;
列名與列的別名在所有的情況下均是忽略大小寫的。
表的別名是區(qū)分大小寫的。下面的查詢將不能工作,因為它用 a 和 A 引用別名:
mysql> SELECT col_name FROM tbl_name AS a WHERE a.col_name = 1 OR A.col_name = 2;