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

MySQL ट्रिगर क्या है और इससे संबंधित ट्रिगरिंग इवेंट क्या हैं?


मूल रूप से, MySQL ट्रिगर डेटाबेस कैटलॉग में स्टोर्ड स्टेटमेंट्स का एक सेट है। यह डेटाबेस ऑब्जेक्ट हमेशा एक टेबल से जुड़ा होता है जिसे तब सक्रिय होने के लिए परिभाषित किया जाता है जब उस टेबल के लिए एक विशेष प्रकार की घटना होती है। दूसरे अर्थ में, हम कह सकते हैं कि MySQL ट्रिगर एक विशेष प्रकार की स्टोर्ड प्रोसीजर है। इसका स्टोर्ड प्रोसीजर के साथ मुख्य अंतर यह है कि इसे स्टोर्ड प्रोसीजर की तरह सीधे नहीं बुलाया जाता। यह स्वचालित रूप से तब बुलाया जाता है जब टेबल के विरुद्ध डेटा संशोधन घटना होती है। जब आप टेबल पर निम्न MySQL स्टेटमेंट में से एक चलाते हैं तो ट्रिगर निष्पादित हो सकता है: INSERT, UPDATE, और DELETE और इसे इवेंट से पहले या बाद में आह्वान किया जा सकता है। ट्रिगर्स उपयोगकर्ता को उनके अस्तित्व का पता चले बिना चुपचाप निष्पादित होते हैं। इनमें COMMIT या ROLLBACK स्टेटमेंट शामिल नहीं हो सकते।

ट्रिगरिंग इवेंट मूल रूप से समय की क्रिया है यानी ट्रिगर कब सक्रिय होता है। MySQL ट्रिगर्स से संबंधित ट्रिगरिंग इवेंट निम्नलिखित हैं -

  • INSERT - जैसा कि इसके नाम से पता चलता है, यह इंगित करता है कि ट्रिगर इवेंट MySQL टेबल में डेटा के सम्मिलन से संबंधित है। इस मामले में, ट्रिगर डेटा के सम्मिलन से पहले या बाद में ट्रिगर होगा।
  • DELETE - जैसा कि इसके नाम से पता चलता है, यह इंगित करता है कि ट्रिगर इवेंट MySQL टेबल में डेटा के विलोपन से संबंधित है। इस मामले में, ट्रिगर डेटा के विलोपन से पहले या बाद में ट्रिगर होगा।
  • UPDATE - जैसा कि इसके नाम से पता चलता है, यह इंगित करता है कि ट्रिगर इवेंट MySQL टेबल में डेटा के अपडेट से संबंधित है। इस मामले में, ट्रिगर डेटा के अपडेट होने से पहले या बाद में ट्रिगर होगा।

  1. - MySQL में != NULL और IS NOT NULL का अंतर

    NULL तुलना: != NULL बनाम IS NOT NULL MySQL में किसी मान की तुलना !=NULL से करने पर परिणाम NULL होता है, इसलिए !=NULL अर्थहीन है। सही तरीका IS NOT NULL है। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1970 ( Value int ); Query OK, 0 rows affected (0.00 sec) mysql> insert into DemoTabl

  1. - MySQL 8.0 में कौन से विकल्प और वेरिएबल डिप्रिकेटेड हैं?

    MySQL 8.0 में डिप्रिकेटेड कुछ विकल्प और वेरिएबल नीचे सूचीबद्ध हैं: Compression: यह बताता है कि क्लाइंट कनेक्शन क्लाइंट/सर्वर प्रोटोकॉल में कम्प्रेशन का उपयोग करता है या नहीं। यह MySQL 8.0.18 से डिप्रिकेटेड है। expire_logs_days: यह विशिष्ट दिनों के बाद बाइनरी लॉग्स को पर्ज करता है। यह MySQL 8.0.3 स

  1. - MySQL 8.0 में पेश किए गए नए विकल्प और वेरिएबल

    MySQL 8.0 में नए पेश किए गए कुछ विकल्प और वेरिएबल नीचे सूचीबद्ध हैं: Com_clone: यह CLONE स्टेटमेंट की संख्या को संदर्भित करता है। इसे MySQL 8.0.2 में जोड़ा गया था। Com_create_role: यह उपयोग किए गए CREATE ROLE स्टेटमेंट की संख्या को संदर्भित करता है। इसे MySQL 8.0.0 में जोड़ा गया था। Com_drop_role: