ऐसे डेटा को स्टोर करने के लिए जहां दिन, महीना या दोनों शून्य हों, हमें SQL मोड को allow_invalid_dates मोड पर सेट करना होगा।
mysql> SET sql_mode = 'allow_invalid_dates';
Query OK, 0 rows affected (0.00 sec)
mysql> INSERT INTO check_date(OrderDate) VALUES('2017-00-00');
Query OK, 1 row affected (0.06 sec)
mysql> SELECT * FROM check_date;
+-------------+
| OrderDate |
+-------------+
| 2017-00-00 |
+-------------+
1 row in set (0.00 sec)
उपरोक्त क्वेरी उस डेटा को डाल देगी जिसमें महीना और दिन दोनों मान शून्य हैं।
mysql> INSERT INTO check_date(OrderDate) VALUES('2017-00-05');
Query OK, 1 row affected (0.07 sec)
mysql> SELECT * FROM check_date;
+------------+
| OrderDate |
+------------+
| 2017-00-00 |
| 2017-00-05 |
+------------+
2 rows in set (0.00 sec)उपरोक्त क्वेरी उस डेटा को डालेगी जिसमें महीने का मान शून्य है।
mysql> INSERT INTO check_date(OrderDate) VALUES('2017-05-00');
Query OK, 1 row affected (0.02 sec)
mysql> SELECT * FROM check_date;
+------------+
| OrderDate |
+------------+
| 2017-00-00 |
| 2017-00-05 |
| 2017-05-00 |
+------------+
3 rows in set (0.00 sec)उपरोक्त क्वेरी उस डेटा को डालेगी जिसमें दिन का मान शून्य है।
चेतावनी: ऐसे "शून्य" डेटा अमान्य माने जाते हैं और गणना/तुलना में अप्रत्याशित परिणाम दे सकते हैं। संभव हो तो NULL उपयोग करें।