QUOTED_IDENTIFIER 和ANSI_NULLS用法

這些是 SQL-92 設置語句,使 SQL Server 2000/2005 遵從 SQL-92 規則。
當 SET QUOTED_IDENTIFIER 爲 ON 時,標識符可以由雙引號分隔,而文字必須由單引號分隔。當 SET QUOTED_IDENTIFIER 爲 OFF 時,標識符不可加引號,且必須符合所有 Transact-SQL 標識符規則。
SQL-92 標準要求在對空值進行等於 (=) 或不等於 (<>) 比較時取值爲 FALSE。當 SET ANSI_NULLS 爲 ON 時,即使 column_name 中包含空值,使用 WHERE column_name = NULL 的 SELECT 語句仍返回零行。即使 column_name 中包含非空值,使用 WHERE column_name <> NULL 的 SELECT 語句仍會返回零行。
當 SET ANSI_NULLS 爲 OFF 時,等於 (=) 和不等於 (<>) 比較運算符不遵從 SQL-92 標準。使用 WHERE column_name = NULL 的 SELECT 語句返回 column_name 中包含空值的行。使用 WHERE column_name <> NULL 的 SELECT 語句返回列中包含非空值的行。此外,使用 WHERE column_name <> XYZ_value 的 SELECT 語句返回所有不爲 XYZ_value 也不爲 NULL 的行。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章