Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

MySQL में NULL या खाली स्ट्रिंग डालने के लिए कौन सा बेहतर है?

<घंटा/>

innoDB में, NULL खाली स्ट्रिंग की तुलना में कम जगह घेरता है। साथ ही, NULL लंबाई शून्य है जबकि खाली स्ट्रिंग की लंबाई 0 है।

इसे समझने के लिए create कमांड की मदद से एक टेबल बनाई जाती है जो इस प्रकार है -

mysql> टेबल बनाएं DemoEmptyAndNULL-> (-> Message varchar(100)-> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.49 सेकंड)

टेबल को सफलतापूर्वक बनाने के बाद, इन्सर्ट कमांड की मदद से टेबल में एक खाली रिकॉर्ड डाला जाता है जो इस प्रकार है -

mysql> DemoEmptyAndNULL मानों ('') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड)

रिकॉर्ड डालने के बाद, हम सभी रिकॉर्ड्स को सेलेक्ट कमांड की मदद से प्रदर्शित कर सकते हैं जो इस प्रकार है -

mysql> DemoEmptyAndNULL से * चुनें;

उपरोक्त क्वेरी को निष्पादित करने के बाद, निम्न आउटपुट प्राप्त होता है -

<पूर्व>+------------+| संदेश |+------------+| |+-----------+1 पंक्ति सेट में (0.00 सेकंड)

बिल्ट इन फंक्शन काउंट की मदद से एक खाली स्ट्रिंग की लंबाई की जांच करने के लिए सिंटैक्स इस प्रकार है -

अपने TableName से गिनती (कॉलम_नाम) चुनें;

उपरोक्त सिंटैक्स का उपयोग एक खाली स्ट्रिंग की लंबाई प्राप्त करने के लिए किया जाता है जो इस प्रकार है -

mysql> DemoEmptyAndNULL से गिनती (संदेश) चुनें;

उपरोक्त क्वेरी को निष्पादित करने के बाद, निम्न आउटपुट है -

<पूर्व>+----------------+| गिनती (संदेश) |+----------------+| 1 |+----------------+1 पंक्ति सेट में (0.06 सेकंड)

उपरोक्त आउटपुट से यह स्पष्ट है कि खाली स्ट्रिंग की लंबाई 1 है।

अब हम NULL की लंबाई की जांच करेंगे। सबसे पहले, तालिका में डाला गया रिकॉर्ड निम्नानुसार डिलीट कमांड का उपयोग करके हटा दिया जाता है -

mysql> DemoEmptyAndNULL से हटाएं जहां message=' ';क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.19 सेकंड)

निम्न क्वेरी का उपयोग यह जांचने के लिए किया जाता है कि अभी तालिका में कोई रिकॉर्ड नहीं है

mysql> DemoEmptyAndNULL से * चुनें; खाली सेट (0.00 सेकंड)

अब, शून्य मान वाला रिकॉर्ड निम्नानुसार तालिका में डाला जाता है -

mysql> DemoEmptyAndNULL मानों में डालें (); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.18 सेकंड)

रिकॉर्ड को सेलेक्ट कमांड का उपयोग करके प्रदर्शित किया जाता है और प्राप्त आउटपुट इस प्रकार है -

<पूर्व>+------------+| संदेश |+------------+| NULL |+-----------+1 पंक्ति सेट में (0.00 सेकंड)

अब, तालिका में शून्य मान वाला केवल एक रिकॉर्ड है। इसकी लंबाई ज्ञात करने के लिए निम्नलिखित क्वेरी का उपयोग किया जाता है -

mysql> DemoEmptyAndNULL से गिनती (संदेश) चुनें;

उपरोक्त क्वेरी का आउटपुट निम्नलिखित है -

<पूर्व>+----------------+| गिनती (संदेश) |+----------------+| 0 |+----------------+1 पंक्ति सेट में (0.00 सेकंड)

उपरोक्त आउटपुट का अर्थ है कि शून्य मान के लिए गिनती 0 है।

आइए हम MySQL संस्करण की जाँच करें।

<पूर्व>mysql> संस्करण का चयन करें ();+---------------+| वर्जन () |+-----------+| 8.0.12 |+-----------+1 पंक्ति में सेट (0.06 सेकंड)

इसलिए डेटाबेस के लिए खाली स्ट्रिंग का उपयोग करना बेहतर है क्योंकि NULL मान सिस्टम को अतिरिक्त काम करने के लिए मजबूर करता है और वह डेटा नहीं देता है जिसे आप ढूंढ रहे हैं। हालाँकि, जब गिनती () फ़ंक्शन निष्पादित होता है, तो NULL कोई अपवाद नहीं फेंकता है।


  1. MySQL में एक स्कीमा से दूसरे में डेटा डालें?

    एक योजना से दूसरी योजना में डेटा सम्मिलित करने के लिए, सिंटैक्स इस प्रकार है। यहां, हमारे पास दो डेटाबेस हैं “yourDatabaseName1” और “yourDatabaseName2” - अपनेDatabaseName2.yourTableName2 में सम्मिलित करें* yourDatabaseName1.yourTableName1 से चुनें; उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका

  1. व्हाट्सएप बनाम टेलीग्राम:कौन सा बेहतर है?

    संचार उद्योग में उन्नत तकनीक ने कई त्वरित संदेशवाहक अनुप्रयोगों को जन्म दिया है। व्हाट्सएप बनाम टेलीग्राम इन दो ऐप्स के बीच चयन करना चुनौतीपूर्ण है। इस लेख में, आप इन दो कार्यक्रमों की समानताएं और अंतर जानेंगे और अपने व्यक्तिगत और व्यावसायिक उपयोग के लिए सही लोगों की पहचान करेंगे। आप इन उपकरणों की स

  1. Xbox One X बनाम Xbox One S:कौन सा बेहतर है?

    8वें को नवंबर में, माइक्रोसॉफ्ट ने आखिरकार अपना लंबे समय से प्रतीक्षित और अब तक का सबसे शक्तिशाली गेम कंसोल, एक्सबॉक्स वन एक्स जारी किया। यह Xbox One S के लिए कीमतों में गिरावट के साथ भी था। हालाँकि, दोनों कंसोल में एक चिकना डिज़ाइन है, 4k सामग्री चला सकते हैं और समान नाम हैं। तो, कीमतों में अंतर क्