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

MySQL एन्यूमरेशन के लिए खाली और NULL मानों को कैसे संभालता है?


MySQL एन्यूमरेशन के लिए खाली मानों को तभी स्वीकार करता है जब SQL मोड TRADITIONAL, STRICT_TRANS_TABLES या STRICT_ALL_TABLES के रूप में सेट नहीं होता है। अन्यथा, MySQL खाली मानों को स्वीकार नहीं करेगा और एक त्रुटि फेंकेगा। जैसा कि हम जानते हैं कि प्रत्येक एन्यूमरेशन मान का एक इंडेक्स मान होता है, खाली मान का इंडेक्स मान 0 होगा।

उदाहरण

mysql> SET SQL_MODE ='Traditional'; Query OK, 0 rows affected (0.00 sec) 
mysql> Insert into result(id, name,grade) values(100, 'Raman', ''); ERROR 1265 (01000): Data truncated for column 'Grade' at row 1

अब, SQL मोड बदलने के बाद हम खाली स्ट्रिंग डाल सकते हैं जैसे:

mysql> Set SQL_MODE =''; Query OK, 0 rows affected (0.00 sec) 
mysql> Insert into result(id, name, grade) values(100, 'Raman', ''); Query OK, 1 row affected, 1 warning (0.04 sec) 
mysql> select * from result; 
+-----+-------+-------+ 
| Id  | Name  | Grade | 
+-----+-------+-------+ 
| 100 | Raman |       | 
+-----+-------+-------+ 
1 row in set (0.00 sec)

MySQL एन्यूमरेशन के लिए NULL मानों को तभी स्वीकार करता है जब हम ENUM कॉलम के साथ NOT NULL निर्दिष्ट नहीं करते हैं। जैसा कि हम जानते हैं कि प्रत्येक एन्यूमरेशन मान का एक इंडेक्स मान होता है, NULL का इंडेक्स मान NULL होता है।

उदाहरण

mysql> Insert into result(id, name, grade) values(101, 'Rahul', NULL); Query OK, 1 row affected (0.04 sec)

उपरोक्त क्वेरी NULL मान डालेगी क्योंकि हम ENUM कॉलम घोषणा में NOT NULL निर्दिष्ट नहीं करते हैं।

mysql> select * from result; 
+-----+-------+-------+ 
| Id  | Name  | Grade | 
+-----+-------+-------+ 
| 100 | Raman |       | 
| 101 | Rahul | NULL  | 
+-----+-------+-------+ 
2 rows in set (0.00 sec)

  1. - MySQL में UPDATE और WHERE से खाली मानों को NULL में बदलें

    MySQL में खाली स्ट्रिंग () मानों को NULL में बदलने के लिए UPDATE स्टेटमेंट के साथ WHERE क्लॉज का उपयोग करें। यह डेटा सफाई, आयात के बाद सामान्यीकरण, और NULL बनाम खाली स्ट्रिंग अस्पष्टता दूर करने के लिए महत्वपूर्ण है। सिंटैक्स UPDATE table_name SET column_name = NULL WHERE column_name = ; व्यावहारिक

  1. - MySQL में IS NOT NULL का उपयोग करके NULL मानों को अनदेखा करना और बाकी मान प्रदर्शित करना

    MySQL में IS NOT NULL के साथ गैर-NULL मान फ़िल्टर करना क्वेरी परिणामों से NULL मानों को बाहर करने के लिए, IS NOT NULL ऑपरेटर का उपयोग करें। यह != NULL या <> NULL से अलग है, जो हमेशा UNKNOWN (गलत) लौटाते हैं। उदाहरण: वैध स्कोर वाले छात्र ढूंढना SELECT * FROM DemoTable1458; +--------------+---------

  1. - MySQL में IFNULL का उपयोग करके NULL मानों को 1 के रूप में प्रदर्शित/अपडेट करें

    MySQL में NULL मानों को संभालना: IFNULL() और COALESCE() MySQL में IFNULL() फ़ंक्शन का उपयोग करके आप NULL मानों को डिफ़ॉल्ट मान से बदल सकते हैं। यह लेख दिखाता है कि कैसे NULL मानों को 1 से अपडेट करें और उन्हें प्रदर्शित करें। टेबल बनाना ); Query OK, 0 rows affected (0.00 sec) NULL मानों सहित डेटा