NULL कीवर्ड को एक वर्ण प्रकार के कॉलम में एक मान के रूप में सम्मिलित करना काफी संभव है, जिसमें NULL बाधा नहीं है क्योंकि NULL अपने आप में एक मान है। निम्नलिखित उदाहरण इसे प्रदर्शित करेगा -
उदाहरण
मान लीजिए कि हमारे पास एक टेबल टेस्ट 2 है जिसमें कैरेक्टर टाइप कॉलम 'नाम' है और उस पर न्यूल बाधा नहीं है। इसे DESCRIBE स्टेटमेंट से इस प्रकार चेक किया जा सकता है -
mysql> test2\G************** का वर्णन करें 1. पंक्ति *********** **************** फ़ील्ड:आईडी प्रकार:int(11) शून्य:नहीं कुंजी:डिफ़ॉल्ट:अतिरिक्त अतिरिक्त:*************** ************* 2. पंक्ति ************* फ़ील्ड:नाम प्रकार:varchar(20 ) शून्य:नहीं कुंजी:डिफ़ॉल्ट:अतिरिक्त अतिरिक्त:सेट में 2 पंक्तियाँ (0.03 सेकंड)
अब, निम्नलिखित क्वेरी की सहायता से, हम 'नाम' कॉलम में मान के रूप में NULL सम्मिलित कर सकते हैं।
mysql> test2 मानों (2, 'NULL') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.06 सेकंड) mysql> test2 से * चुनें;+----+--------+| आईडी | नाम |+-----+-----------+| 1 | गौरव || 2 | NULL |+----+----------+2 पंक्तियों में सेट (0.00 सेकंड)
एक मूल्य के रूप में 'NULL' और 'NULL' के बीच के अंतर को समझने के लिए हम निम्नलिखित दो प्रश्नों को चला सकते हैं -
mysql> test2 से हटाएं जहां नाम IS NULL है; क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.00 सेकंड)
उपरोक्त क्वेरी 0 पंक्तियों को प्रभावित करती है इसका मतलब है कि कोई NULL पंक्तियाँ नहीं हैं। यह SELECT क्वेरी से जाँचा जा सकता है कि कोई पंक्तियाँ नहीं हटाई गई हैं।
mysql> test2 से * चुनें;+----+--------+| आईडी | नाम |+-----+-----------+| 1 | गौरव || 2 | NULL |+-----+-------+2 पंक्तियों में सेट (0.00 सेकंड)mysql> test2 से हटाएं जहां नाम ='NULL'; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.09 सेकंड)
उपरोक्त क्वेरी 1 पंक्ति को प्रभावित करती है इसका मतलब है कि एक पंक्ति है जिसमें NULL एक मान के रूप में है। इसे SELECT क्वेरी से चेक किया जा सकता है कि जिस पंक्ति में 'NAME' कॉलम में मान के रूप में NULL था, उसे हटा दिया गया है।
mysql> test2 से * चुनें;+----+--------+| आईडी | नाम |+-----+-----------+| 1 | गौरव |+----+