MySQL की प्रतिक्रिया आउट-ऑफ-रेंज या अमान्य डेटा पर SQL MODE पर निर्भर करती है। यदि हम ALLOW_INVALID_DATES मोड इनेबल करते हैं तो MySQL आउट-ऑफ-रेंज मानों को ऑल जीरो (यानी '0000-00-00 00:00:00') में बदल देता है और बिना किसी एरर या वार्निंग के टेबल में स्टोर कर लेता है।
उदाहरण के लिए, हम SQL MODE बदल सकते हैं और फिर आउट-ऑफ-रेंज डाल सकते हैं:
mysql> SET sql_mode = 'ALLOW_INVALID_DATES';
Query OK, 0 rows affected (0.00 sec)
mysql> INSERT INTO order1234(productname, quantity, orderdate) VALUES('A', 500, '999-05-100');
Query OK, 1 row affected, 1 warning (0.13 sec)
mysql> SELECT * FROM order1234;
+-------------+----------+---------------+
| ProductName | Quantity | OrderDate |
+-------------+----------+---------------+
| A | 500 | 0000-00-00 |
+-------------+----------+---------------+
1 row in set (0.00 sec)
हम देख सकते हैं MySQL आउट-ऑफ-रेंज मान को ऑल जीरो में बदल देता है।
नोट: सख्त मोड (STRICT_TRANS_TABLES) में अमान्य डेटा एरर फेंकता है। ALLOW_INVALID_DATES केवल वार्निंग देता है और '0000-00-00' स्टोर करता है।