SQL 中的大小寫規(guī)則在語句的不同部分是不同的,而且還取決于所引用的東西以及運(yùn)行的操作系統(tǒng)。下面給出相應(yīng)的說明:
1、SQL 關(guān)鍵字和函數(shù)名。關(guān)鍵字與函數(shù)名是不區(qū)分大小寫的??砂慈我獾拇笮懽址o出。
2、數(shù)據(jù)庫與表名。MySQL 中數(shù)據(jù)庫和表名對(duì)應(yīng)于服務(wù)器主機(jī)上的基本文件系統(tǒng)中的目錄和文件。因此,數(shù)據(jù)庫與表名是否區(qū)分大小寫取決于主機(jī)上的操作系統(tǒng)處理文件名的方式。運(yùn)行在 UNIX 上的服務(wù)器處理數(shù)據(jù)庫名和表名是區(qū)分大小寫的,因?yàn)閁NIX 的文件名是區(qū)分大小寫的。而Windows 文件名是不區(qū)分大小寫的,所以運(yùn)行在Windows上的服務(wù)器處理數(shù)據(jù)庫名和表名也是不區(qū)分大小寫的。如果在UNIX 服務(wù)器上創(chuàng)建一個(gè)某天可能會(huì)移到Windows 服務(wù)器上的數(shù)據(jù)庫,應(yīng)該意識(shí)到這個(gè)特性:如果現(xiàn)在創(chuàng)建了兩個(gè)分別名為abc 和ABC 的表,它們?cè)赪indows 機(jī)器上將是沒有區(qū)別的。避免這種情況發(fā)生的一種方法是選擇一種字符(如小寫),總是以這種字符創(chuàng)建數(shù)據(jù)庫和表名。這樣,在將數(shù)據(jù)庫移到不同的服務(wù)器時(shí),名稱的大小寫便不會(huì)產(chǎn)生問題。
3、列與索引名。MySQL 中列和索引名是不區(qū)分大小寫的。
4、別名。別名是區(qū)分大小寫的??砂慈我獾拇笮懽址f明一個(gè)別名(大寫、小寫或大小寫混合),但是必須在任何查詢中都以相同的大小寫對(duì)其進(jìn)行引用。不管數(shù)據(jù)庫、表或別名是否是區(qū)分大小寫的,在同一個(gè)查詢中的任何地方引用同一個(gè)名稱都必須使用相同的大小寫。對(duì)于SQL 關(guān)鍵字、函數(shù)名或列名和索引名沒有這個(gè)要求??稍谕粋€(gè)查詢中多個(gè)地方用不同的大小寫對(duì)它們進(jìn)行引用。當(dāng)然,如果使用一致的大小寫而不是“胡亂寫”的風(fēng)格(如SelECt NamE FrOm …),相應(yīng)的查詢可讀性要強(qiáng)得多。








暫無數(shù)據(jù)