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

MySQL में अमान्य डेट के साथ INTERVAL कीवर्ड का व्यवहार

MySQL का व्यवहार allow_invalid_dates SQL मोड पर निर्भर करता है। यदि यह मोड सक्षम है, तो MySQL अमान्य डेट को स्वीकार करेगा और वैध डेट की तरह ही डेट अंकगणित करेगा। अन्यथा, यदि यह मोड निष्क्रिय है, तो यह अमान्य डेट को स्वीकार नहीं करेगा और NULL आउटपुट देगा।

mysql> SELECT '2017-02-30' + INTERVAL 7 DAY;
+-------------------------------+
| '2017-02-30' + INTERVAL 7 DAY |
+-------------------------------+
| NULL                          |
+-------------------------------+
1 row in set, 1 warning (0.00 sec)

अब allow_invalid_dates मोड सक्षम करने के बाद:

mysql> SET sql_mode = 'ALLOW_INVALID_DATES';
Query OK, 0 rows affected (0.05 sec)

mysql> SELECT '2017-02-30' + INTERVAL 7 DAY;
+-------------------------------+
| '2017-02-30' + INTERVAL 7 DAY |
+-------------------------------+
| 2017-03-09                    |
+-------------------------------+

mysql> SELECT '2017-11-31' + INTERVAL 7 DAY;
+-------------------------------+
| '2017-11-31' + INTERVAL 7 DAY |
+-------------------------------+
| 2017-12-08                    |
+-------------------------------+

नोट: अमान्य डेट्स (जैसे फरवरी 30 या नवंबर 31) को अनुमति देना डेटा अखंडता के लिए जोखिम भरा हो सकता है। उत्पादन वातावरण में इसका उपयोग सावधानी से करें।

  1. - MySQL में BEFORE INSERT ट्रिगर से दिनांक स्वचालित सेट करें

    MySQL में BEFORE INSERT ट्रिगर का उपयोग करके पंक्ति डालने से पहले दिनांक/समय कॉलम को स्वचालित रूप से वर्तमान दिनांक पर सेट कर सकते हैं। सिंटैक्स CREATE TRIGGER ट्रिगर_नाम BEFORE INSERT ON टेबल_नाम FOR EACH ROW SET NEW.कॉलम_नाम = फ़ंक्शन(); उदाहरण: DueDate को CURDATE() पर सेट करें 1. टेबल बनाएं C

  1. - MySQL में CURDATE के साथ CONTAINS() का उपयोग कैसे करें? (CONCAT + LIKE का उपयोग करें)

    MySQL में CONTAINS() नहीं है - CONCAT() और LIKE का उपयोग करें MySQL में CONTAINS() फ़ंक्शन नहीं है (यह SQL Server/Full-text खोज में मौजूद है)। स्ट्रिंग में उपस्ट्रिंग खोजने के लिए, LIKE ऑपरेटर के साथ CONCAT() का उपयोग करके डायनामिक पैटर्न बनाएं। वर्तमान तिथि जांचना SELECT CURDATE(); +------------+

  1. - MySQL में DATE_ADD से तारीख में वर्ष जोड़ें

    UPDATE और DATE_ADD() से मौजूदा तारीखों में अंतराल जोड़ें मौजूदा तारीख कॉलम में वर्ष (या अन्य अंतराल) जोड़ने के लिए UPDATE के साथ DATE_ADD() का उपयोग करें। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1984 ( ShippingDate date ); Query OK, 0 rows affected (0.00 sec) mysql> insert into