新聞中心
編者注:SET QUOTED_IDENTIFIER

成都創(chuàng)新互聯(lián)公司是少有的成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、營銷型企業(yè)網(wǎng)站、成都微信小程序、手機(jī)APP,開發(fā)、制作、設(shè)計(jì)、外鏈、推廣優(yōu)化一站式服務(wù)網(wǎng)絡(luò)公司,于2013年成立,堅(jiān)持透明化,價(jià)格低,無套路經(jīng)營理念。讓網(wǎng)頁驚喜每一位訪客多年來深受用戶好評
使 Microsoft? SQL Server? 遵從關(guān)于引號分隔標(biāo)識符和文字字符串的 SQL-92 規(guī)則。由雙引號分隔的標(biāo)識符可以是Transact-SQL 保留關(guān)鍵字,或者可以包含 Transact-SQL 標(biāo)識符語法規(guī)則通常不允許的字符。
先看下面幾個(gè)sql語句
- SET QUOTED_IDENTIFIER ON
- SELECT * FROM "USER" WHERE a='netasp'
- SET QUOTED_IDENTIFIER ON
- SELECT * FROM [USER] WHERE a='netasp'
- SET QUOTED_IDENTIFIER OFF
- SELECT * FROM [USER] WHERE a="netasp"
- SET QUOTED_IDENTIFIER OFF
- SELECT * FROM [USER] WHERE a= 'netasp'
當(dāng)在數(shù)據(jù)庫中新建一個(gè)名字是USER的表的時(shí)候,常常會帶來一些麻煩,因?yàn)閁SER是SQL中的關(guān)鍵字,但是上面的幾個(gè)語句不會報(bào)錯。再說一個(gè)概念:標(biāo)示符是SQL中的中括號[]。
當(dāng)SET QUOTED_IDENTIFIER值為ON時(shí),雙引號內(nèi)的字符被當(dāng)作是數(shù)據(jù)庫對象。就是說雙引號" "和標(biāo)識符[]效果是一樣樣的,他們都表示引用的字符是數(shù)據(jù)庫對象。單引號'表示字符串的邊界。
當(dāng)SET QUOTDE_IDENTIFIER OFF時(shí),雙引號被解釋為字符串的邊界,和單引號的作用是類似的。就是說雙引號"不能當(dāng)做標(biāo)識符使用,但是可以當(dāng)做字符邊界,和單引號'的效果是一樣樣的。
可以做一個(gè)總結(jié):當(dāng)SET QUOTED_IDENTIFIER ON " "等同于[ ] 表示數(shù)據(jù)庫對象;當(dāng)SET QUOTED_IDENTIFIER OFF " "等同于' '表示字符串邊界;還有這里的雙引號" 并不是兩個(gè)單引號'合起來的,是shift+”打出來的,初學(xué)者可能會犯這樣的錯誤。
當(dāng)前名稱:SQL點(diǎn)滴之SETQUOTED_IDENTIFIEROFF語句的作用
網(wǎng)站鏈接:http://www.dlmjj.cn/article/dpioode.html


咨詢
建站咨詢
