PHP में, खाली स्ट्रिंग एक NULL मान के बराबर होती है, लेकिन MySQL में, मामला अलग है यानी खाली स्ट्रिंग NULL मान के बराबर नहीं है। उपरोक्त सिंटैक्स को समझने के लिए, जब आप एक खाली स्ट्रिंग सम्मिलित कर सकते हैं, तो हम NOT NULL बाधा के साथ एक कॉलम बनाते हैं।
आइए एक टेबल बनाएं। तालिका बनाने की क्वेरी इस प्रकार है -
mysql> टेबल बनाएं EmptyStringNotNullDemo -> (-> आईडी नॉट न्यूल AUTO_INCREMENT, -> Name varchar(10) not null, -> PRIMARY KEY(Id) -> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.83 सेकंड)
अब आप तालिका में कुछ रिकॉर्ड सम्मिलित कर सकते हैं यह जांचने के लिए कि खाली स्ट्रिंग शून्य है या नहीं। रिकॉर्ड डालने की क्वेरी इस प्रकार है -
mysql> EmptyStringNotNullDemo (नाम) मान ('जॉन') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> EmptyStringNotNullDemo (नाम) मान ('') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.43) sec)mysql> EmptyStringNotNullDemo (नाम) मान ('कैरोल') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.12 सेकंड) mysql> EmptyStringNotNullDemo (नाम) मान ('') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.13 सेकंड) )mysql> EmptyStringNotNullDemo (नाम) मान ('') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड) mysql> EmptyStringNotNullDemo (नाम) मान ('लैरी') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.14 सेकंड)
चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है -
mysql> EmptyStringNotNullDemo से *चुनें;
निम्न आउटपुट है -
+-----+----------+| आईडी | नाम |+----+----------+| 1 | जॉन || 2 | || 3 | कैरल || 4 | || 5 | || 6 | लैरी |+-----+----------+6 पंक्तियों में सेट (0.00 सेकंड)
अब जांचें कि खाली स्ट्रिंग MySQL में NULL या NOT NULL है। यदि आपको 0 मिलता है, तो इसका मतलब यह होगा कि खाली स्ट्रिंग NULL के बराबर नहीं है, अन्यथा खाली स्ट्रिंग NULL है। क्वेरी इस प्रकार है -
mysql> नाम चुनें, नाम IS NULL के रूप में EmptyStringNotNullDemo से EmptyValueIsNotNULL;
निम्न आउटपुट है -
<पूर्व>+----------+---------------------+| नाम | EmptyValueIsNotNULL |+----------+---------------------+| जॉन | 0 || | 0 || कैरल | 0 || | 0 || | 0 || लैरी | 0 |+----------+---------------------+6 पंक्तियाँ सेट में (0.00 सेकंड)आप उपयोगकर्ता द्वारा परिभाषित चर की सहायता से प्राप्त कर सकते हैं। वाक्य रचना इस प्रकार है -
सेट @anyVariableName="";अपना टेबलनाम अपडेट करें अपना कॉलमनाम सेट करें=@anyVariableName;
दी गई तालिका के लिए उपरोक्त सिंटैक्स को लागू करें। उपयोगकर्ता चर घोषित करने और परिभाषित करने के लिए क्वेरी इस प्रकार है।
mysql> सेट @emptyStringValue="";क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.00 सेकंड)
खाली स्ट्रिंग के साथ तालिका को अपडेट करें। क्वेरी इस प्रकार है -
mysql> अपडेट EmptyStringNotNullDemo set Name=@emptyStringValue;क्वेरी ठीक है, 3 पंक्तियाँ प्रभावित (0.25 सेकंड)पंक्तियाँ मिलान:6 परिवर्तित:3 चेतावनियाँ:0
तालिका से सभी रिकॉर्ड एक बार फिर प्रदर्शित करें। क्वेरी इस प्रकार है -
mysql> EmptyStringNotNullDemo से *चुनें;
निम्न आउटपुट है -
<पूर्व>+-----+------+| आईडी | नाम |+----+------+| 1 | || 2 | || 3 | || 4 | || 5 | || 6 | |+----+------+6 पंक्तियाँ सेट में (0.00 सेकंड)कॉलम 'नाम' को अपडेट कर दिया गया है।