SQL很嬌氣,談談大小寫對(duì)SQL語句的影響

Time:2021/06/11 11:18:38   Click:

SQL語句存放在内存中,可以被(bèi)所有的數據庫用戶共享. 因此,當你執行一個SQL語句時(shí),如果它和之前的執行過(guò)的語句完全相同,就(jiù)能(néng)很快獲得已經(jīng)被(bèi)解析的語句。

當你向(xiàng)服務器提交一個SQL語句,首先會(huì)在指定内存中查找相同的語句。這(zhè)裡(lǐ)需要注明的是,兩(liǎng)者采取的是一種(zhǒng)嚴格匹配,要達成(chéng)共享,SQL語句必須完全相同(包括空格,換行等).


A.字符級的比較:當前被(bèi)執行的語句和共享池中的語句必須完全相同.

例如:

SELECT * FROM EMP;

和下列每一個都(dōu)不同

SELECT * from EMP;

Select *  From Emp;


B.兩(liǎng)個語句所指的對(duì)象必須完全相同:

例如:

用戶 對(duì)象名 如何訪問(聲明部分)

Jack sal_limit private synonym

Work_city public synonym


Plant_detail  public synonym

Jill sal_limit private synonym

Work_city public synonym

Plant_detail table owner

考慮一下下列SQL語句能(néng)否在這(zhè)兩(liǎng)個用戶之間共享.


C.兩(liǎng)個SQL語句中必須使用相同的名字的綁定變量(bind variables)


例如:第一組的兩(liǎng)個SQL語句是相同的(可以共享),而第二組中的兩(liǎng)個語句是不同的(即使在運行時(shí),賦于不同的綁定變量相同的值)


a.

select pin , name from people where pin = :blk1.pin;

select pin , name from people where pin = :blk1.pin;


b.

select pin , name from people where pin = :blk1.ot_ind;

select pin , name from people where pin = :blk1.ov_ind;


TOP

錦江區聚格樂享網絡工作室@2012 版權所有
蜀ICP備12016524号-2

立即咨詢
成(chéng)都(dōu)網站建設,成(chéng)都(dōu)做網站,錦江區聚格樂享網絡工作室
40f13d50b73e104f832ed1b719ae6935