2 回答

TA貢獻(xiàn)2065條經(jīng)驗(yàn) 獲得超14個(gè)贊
在Oracle中的標(biāo)識(shí)符周?chē)由想p引號(hào)會(huì)導(dǎo)致Oracle將標(biāo)識(shí)符視為區(qū)分大小寫(xiě),而不是使用不區(qū)分大小寫(xiě)的默認(rèn)值。如果在名稱(chēng)周?chē)鷦?chuàng)建一個(gè)帶雙引號(hào)的表(或列),則必須始終使用雙引號(hào)引用標(biāo)識(shí)符并正確指定大小寫(xiě)(除了所有大寫(xiě)標(biāo)識(shí)符,其中雙引號(hào)無(wú)意義) )。
在幕后,Oracle始終在進(jìn)行區(qū)分大小寫(xiě)的標(biāo)識(shí)符匹配。但在進(jìn)行匹配之前,它始終會(huì)將不引用大寫(xiě)的標(biāo)識(shí)符強(qiáng)制轉(zhuǎn)換為大寫(xiě)。如果在標(biāo)識(shí)符周?chē)由想p引號(hào),Oracle會(huì)將強(qiáng)制轉(zhuǎn)換為大寫(xiě)。
所以,如果你做的事情
CREATE TABLE my_table( col1 number, col2 number)
您可以
SELECT * FROM my_tableSELECT * FROM MY_TABLESELECT * FROM My_TableSELECT * FROM "MY_TABLE"
但有點(diǎn)像
SELECT * FROM "my_table"
將失敗。
另一方面,如果你做了類(lèi)似的事情
CREATE TABLE "my_other_table"( col1 number, col2 number)
你不能這樣做
SELECT * FROM my_other_tableSELECT * FROM MY_OTHER_TABLESELECT * FROM My_Other_TableSELECT * FROM "MY_OTHER_TABLE"
但是這個(gè)
SELECT * FROM "my_other_table"
將工作

TA貢獻(xiàn)1779條經(jīng)驗(yàn) 獲得超6個(gè)贊
應(yīng)該補(bǔ)充的是,引號(hào)中的標(biāo)識(shí)符可能包含特殊字符,例如“ab cd”是有效的標(biāo)識(shí)符。
添加回答
舉報(bào)