在數據庫中新建存儲過程的時辰,默認城市有一個 SET QUOTED_IDENTIFIER ON 在前面,那么,這句話到底是什么意思呢? QUOTED_IDENTIFIER ON 與 SET QUOTED_IDENTIFIER OFF 的區別在哪里呢?
經由過程sqlserver數據庫辦理東西,建立的存儲過程的大致布局如圖所示,在代碼的最前面默認會有一個 SET QUOTED_IDENTIFIER ON 的語句,可是,這句話到底有什么用呢?或許良多人都不太大白
2若何建立存儲過程執行存儲過程
下面起頭演示這個語句的感化。在sql server management studio辦理東西中點擊【新建查詢】,建立一個新的sql語句書寫窗口,后續的所有sql語句,都在這個新的窗口中演示
開啟SET QUOTED_IDENTIFIER ON,然后試著建立一個表名字為distinct的表,當寫完sql,就可以看到distinct下面有一道紅色的海浪線,這就暗示有語法錯誤了
點擊上面菜單的 勾勾 圖標,查抄當前窗口中的sql語法是否準確。從檢測成果可以看出,當開啟SET QUOTED_IDENTIFIER ON的時辰,distinct與系統關頭字反復了不克不及經由過程
假設開啟SET QUOTED_IDENTIFIER ON,并且必然要建立distinct為名字的表名,這個時辰就可以利用雙引號了,將distinct括起來即可。寫完之后,點擊執行按鈕,就可以看到這個表建立當作功了
封閉SET QUOTED_IDENTIFIER OFF,此時distinct固然有雙引號括起來,仍然會報語法錯誤的,sql語句不會獲得執行
封閉SET QUOTED_IDENTIFIER OFF,若是去失落distinct括起來的雙引號,仍然會報語法錯誤,sql語句仍是不會獲得執行。
總結:
1)SET QUOTED_IDENTIFIER ON:與系統關頭字反復的,許可利用雙引號括起來,就能正常利用。注重是雙引號
2)SET QUOTED_IDENTIFIER OFF:與系統關頭字反復的,不許可利用
0 篇文章
如果覺得我的文章對您有用,請隨意打賞。你的支持將鼓勵我繼續創作!