अगर हम उस टेबल को नष्ट करेंगे जिससे यह जुड़ा हुआ है तो ट्रिगर भी नष्ट हो जाएगा। इसे ट्रिगर का स्पष्ट विनाश कहा जाता है। इसे एक उदाहरण से समझा जा सकता है -
उदाहरण
मान लीजिए हमारे पास 'Sample' नामक टेबल पर 'trigger_before_delete_sample' नामक एक ट्रिगर है। अब अगर हम इस टेबल को डिलीट करेंगे तो इस टेबल से जुड़ा उपरोक्त ट्रिगर भी डिलीट हो जाएगा।
mysql> Show Triggers\G *************************** 1. row *************************** Trigger: trigger_before_delete_sample Event: DELETE Table: sample Statement: BEGIN SET @count = if (@count IS NULL, 1, (@count+1)); INSERT INTO sample_rowaffected values (@count); END Timing: BEFORE Created: 2017-11-21 12:31:58.70 sql_mode: ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION Definer: root@localhost character_set_client: cp850 collation_connection: cp850_general_ci Database Collation: latin1_swedish_ci *************************** 2. row *************************** Trigger: before_inser_studentage Event: INSERT Table: student_age Statement: IF NEW.age < 0 THEN SET NEW.age = 0; END IF Timing: BEFORE Created: 2017-11-21 11:26:15.34 sql_mode: ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION Definer: root@localhost character_set_client: cp850 collation_connection: cp850_general_ci Database Collation: latin1_swedish_ci 2 rows in set (0.01 sec)
उपरोक्त रिजल्ट सेट दिखाता है कि डेटाबेस में दो ट्रिगर हैं जिनमें से एक 'Sample' नामक टेबल से जुड़ा ट्रिगर है। अब निम्न स्टेटमेंट की मदद से, हम टेबल को ड्रॉप करेंगे -
mysql> DROP table sample; Query OK, 0 rows affected (0.26 sec)
अब निम्न स्टेटमेंट की मदद से, हम देख सकते हैं कि 'Sample' नामक टेबल से जुड़ा ट्रिगर भी नष्ट हो गया है।
mysql> Show Triggers\G *************************** 1. row *************************** Trigger: before_inser_studentage Event: INSERT Table: student_age Statement: IF NEW.age < 0 THEN SET NEW.age = 0; END IF Timing: BEFORE Created: 2017-11-21 11:26:15.34 sql_mode: ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION Definer: root@localhost character_set_client: cp850 collation_connection: cp850_general_ci Database Collation: latin1_swedish_ci 1 row in set (0.01 sec)