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

MySQL डेटाबेस में सभी ट्रिगर कैसे सूचीबद्ध करें?

ट्रिगर देखने के दो तरीके

MySQL में परिभाषित सभी ट्रिगर देखने के दो मुख्य तरीके हैं: SHOW TRIGGERS कमांड और INFORMATION_SCHEMA.TRIGGERS टेबल।

विधि 1: SHOW TRIGGERS कमांड

mysql> SHOW TRIGGERS;

आउटपुट कॉलम

कॉलमविवरण
Triggerट्रिगर का नाम
Eventघटना: INSERT, UPDATE, DELETE
Tableजिस टेबल पर ट्रिगर है
Statementट्रिगर बॉडी (SQL कोड)
TimingBEFORE या AFTER
Createdनिर्माण टाइमस्टैम्प
sql_modeनिर्माण के समय SQL मोड
Definerनिर्माता उपयोगकर्ता

नमूना आउटपुट

+----------------+--------+----------------------+--------------------------------------------------------------------+--------+------------------------+--------------------------------------------+---------+----------------------+----------------------+--------------------+
| Trigger        | Event  | Table                | Statement                                                          | Timing | Created                | sql_mode                                   | Definer | character_set_client | collation_connection | Database Collation |
+----------------+--------+----------------------+--------------------------------------------------------------------+--------+------------------------+--------------------------------------------+---------+----------------------+----------------------+--------------------+
| binsertTrigger | INSERT | functiontriggersdemo | SET new.Id = uuid()                                                | BEFORE | 2018-10-16 13:36:09.86 | STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION | root@%  | cp850                | cp850_general_ci     | utf8mb4_unicode_ci |
| Table1Trigger  | INSERT | table1               | begin insert into Table2(id, name) values (new.id, new.name); end | AFTER  | 2018-10-23 10:51:31.76 | STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION | root@%  | cp850                | cp850_general_ci     | utf8mb4_unicode_ci |
+----------------+--------+----------------------+--------------------------------------------------------------------+--------+------------------------+--------------------------------------------+---------+----------------------+----------------------+--------------------+

विधि 2: INFORMATION_SCHEMA.TRIGGERS (MySQL 5.0.10+)

अधिक संरचित और फ़िल्टर करने योग्य परिणाम के लिए:

mysql> SELECT TRIGGER_SCHEMA, TRIGGER_NAME, ACTION_STATEMENT 
    -> FROM INFORMATION_SCHEMA.TRIGGERS;
+----------------+----------------------------+-------------------------------------------------------------------------------------------------------------------+
| TRIGGER_SCHEMA | TRIGGER_NAME               | ACTION_STATEMENT                                                                                                  |
+----------------+----------------------------+-------------------------------------------------------------------------------------------------------------------+
| sys            | sys_config_insert_set_user | BEGIN IF @sys.ignore_sys_config_triggers != true AND NEW.set_by IS NULL THEN SET NEW.set_by = USER(); END IF; END |
| business       | binsertTrigger             | SET new.Id = uuid()                                                                                               |
| business       | Table1Trigger              | begin insert into Table2(id, name) values (new.id, new.name);end                                                  |
+----------------+----------------------------+-------------------------------------------------------------------------------------------------------------------+
5 rows in set (0.00 sec)

उपयोगी फ़िल्टर क्वेरीज़

-- विशिष्ट डेटाबेस के ट्रिगर
SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE TRIGGER_SCHEMA = 'mydb';

-- विशिष्ट टेबल के ट्रिगर
SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE EVENT_OBJECT_TABLE = 'mytable';

-- केवल BEFORE ट्रिगर
SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE ACTION_TIMING = 'BEFORE';

आवश्यकता: MySQL 5.0.10 या उच्चतर। INFORMATION_SCHEMA विधि अधिक लचीली है क्योंकि यह मानक SELECT सिंटैक्स का उपयोग करती है।

  1. MySQL डेटाबेस का बैकअप कैसे लें MySQL डेटाबेस का बैकअप कैसे लें

    MySQL एक रिलेशनल डेटाबेस मैनेजमेंट सिस्टम (RDBMS) है। यह डेटाबेस निर्देशों को संभालता है और एक ही समय में कई डेटाबेस को प्रबंधित कर सकता है। उदाहरण के लिए, यदि आप एक नया डेटाबेस बनाना चाहते हैं या किसी मौजूदा डेटाबेस में डेटा जोड़ना चाहते हैं, तो आप MySQL सर्वर को एक संदेश भेजते हैं, उसे वह डेटा दे

  1. MySQL में कैसे चेक करें कि कौन सा डेटाबेस चुना गया है? MySQL में कैसे चेक करें कि कौन सा डेटाबेस चुना गया है?

    हम इसे DATABASE() मेथड की मदद से DUAL से चेक कर सकते हैं। मान लीजिए, हम डेटाबेस business का उपयोग कर रहे हैं। क्वेरी निम्न है − mysql> USE business; Database changed अब हम DATABASE() को DUAL से चेक कर सकते हैं कि कौन सा डेटाबेस चुना गया है। क्वेरी निम्न है − mysql> SELECT DATA

  1. कमांड लाइन में MySQL डेटाबेस कैसे बनाएं? कमांड लाइन में MySQL डेटाबेस कैसे बनाएं?

    सबसे पहले, आपको कमांड प्रॉम्प्ट खोलना होगा। आप शॉर्टकट Windows+R की का उपयोग करके खोल सकते हैं। स्क्रीनशॉट इस प्रकार है: अब CMD टाइप करें और OK बटन दबाएं: अब निम्न कमांड प्रॉम्प्ट दिखाई देगा: अब MySQL bin डायरेक्टरी तक पहुंचें। स्क्रीनशॉट इस प्रकार है: कमांड लाइन में MySQL चलाकर डेटाबेस बनाने का