SQL सर्वर में एक ANSI_NULLS
है सेटिंग जो निर्धारित करती है कि कैसे NULL
मूल्यों का मूल्यांकन तब किया जाता है जब समान के साथ किसी अन्य मान की तुलना की जाती है (=
) और इसके बराबर नहीं (<>
) तुलना ऑपरेटर।
हालांकि यह सच है कि आप ANSI_NULLS
. को बदल सकते हैं सत्र स्तर पर सेटिंग (SET ANSI_NULLS
. का उपयोग करके) ), प्रत्येक डेटाबेस का अपना ANSI_NULLS
. भी होता है सेटिंग।
आप यह देखने के लिए अपने डेटाबेस की जांच कर सकते हैं कि उसका ANSI_NULLS
. है या नहीं सेटिंग ON
है या OFF
.
टी-एसक्यूएल के साथ ऐसा करने के लिए, आप या तो sys.databases
. का उपयोग कर सकते हैं कैटलॉग व्यू या DATABASEPROPERTYEX()
समारोह।
sys.databases
देखें
sys.databases
कैटलॉग व्यू में आपके SQL सर्वर इंस्टेंस में प्रत्येक डेटाबेस के बारे में बहुत सारी जानकारी होती है।
निम्न क्वेरी ANSI_NULLS
लौटाती है Music
. के लिए सेटिंग डेटाबेस:
SELECT is_ansi_nulls_on
FROM sys.databases
WHERE name = 'Music';
परिणाम:
+--------------------+ | is_ansi_nulls_on | |--------------------| | 1 | +--------------------+
इस मामले में, ANSI_NULLS
ON
है इस डेटाबेस के लिए।
हम इसे OFF
कर सकते हैं इस तरह:
ALTER DATABASE Music
SET ANSI_NULLS OFF;
आप WHERE
. को हटा सकते हैं sys.databases
. का उपयोग करते समय क्लॉज सभी डेटाबेस के लिए डेटा वापस करने के लिए कैटलॉग दृश्य। इस तरह:
SELECT
name,
is_ansi_nulls_on
FROM sys.databases
ORDER BY name ASC;
इस दृश्य में is_ansi_null_default_on
called नामक एक कॉलम भी है , जो ANSI_NULL_DEFAULT
. लौटाता है डेटाबेस के लिए सेटिंग।
ANSI_NULL_DEFAULT
सेटिंग डिफ़ॉल्ट मान निर्धारित करती है, NULL
या NOT NULL
, एक स्तंभ या CLR उपयोगकर्ता-परिभाषित प्रकार का, जिसके लिए CREATE TABLE
में स्पष्ट रूप से शून्यता को परिभाषित नहीं किया गया है या ALTER TABLE
बयान।
हम इस कॉलम को शामिल करने के लिए पिछले उदाहरण को संशोधित कर सकते हैं:
SELECT
name,
is_ansi_nulls_on,
is_ansi_null_default_on
FROM sys.databases
ORDER BY name ASC;
द DATABASEPROPERTYEX()
समारोह
इन सेटिंग्स को जांचने का दूसरा तरीका DATABASEPROPERTYEX()
. के साथ है समारोह।
यहां ANSI_NULLS
की जांच करने का तरीका बताया गया है Music
. के लिए सेटिंग डीबी:
SELECT DATABASEPROPERTYEX('Music','IsAnsiNullsEnabled');
परिणाम:
+--------------------+ | (No column name) | |--------------------| | 0 | +--------------------+
यह अब 0
है OFF
के लिए क्योंकि मैंने इसे OFF
पर सेट किया है पिछले उदाहरण में।
ANSI_NULL_DEFAULT
की जांच करने के लिए सेटिंग, यह करें:
SELECT DATABASEPROPERTYEX('Music','IsAnsiNullDefault');
परिणाम:
+--------------------+ | (No column name) | |--------------------| | 1 | +--------------------+