आइए पहले एक टेबल बनाते हैं। टेबल बनाने के लिए CREATE कमांड का उपयोग किया जाता है।
mysql> create table Table1 -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.62 sec)
आइए अब दूसरी टेबल बनाते हैं।
mysql> create table Table2 -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.49 sec)
अब, ट्रिगर बनाने का तरीका निम्नलिखित है।
mysql> delimiter # mysql> create trigger Table1Trigger after insert on Table1 -> for each row -> begin -> insert into Table2(id, name) values (new.id, new.name); -> end# Query OK, 0 rows affected (0.29 sec) mysql> delimiter ;
ट्रिगर बनाने के लिए, हमें डिलीमीटर बदलने की आवश्यकता होती है।
Table1 में पंक्ति डालने से ट्रिगर सक्रिय होता है और रिकॉर्ड्स Table2 में डालता है। Table1 में रिकॉर्ड डालने के लिए।
mysql> insert into Table1 values(1,'John'),(2,'Smith'),(3,'Carol'); Query OK, 3 rows affected (0.28 sec) Records: 3 Duplicates: 0 Warnings: 0
जांचने के लिए कि रिकॉर्ड्स दोनों टेबल्स में डाले गए हैं या नहीं।
mysql> select *from Table1;
यहां आउटपुट है जो दर्शाता है कि रिकॉर्ड Table1 में सफलतापूर्वक डाला गया है।
+------+-------+ | id | name | +------+-------+ | 1 | John | | 2 | Smith | | 3 | Carol | +------+-------+ 3 rows in set (0.00 sec)
दूसरी टेबल के लिए जांच करने के लिए।
mysql> select *from Table2;
निम्नलिखित आउटपुट दर्शाता है कि रिकॉर्ड Table2 में सफलतापूर्वक डाला गया है।
+------+-------+ | id | name | +------+-------+ | 1 | John | | 2 | Smith | | 3 | Carol | +------+-------+ 3 rows in set (0.00 sec)
सर्वोत्तम अभ्यास: ट्रिगर मेंNEWकीवर्ड नई पंक्ति के मानों को संदर्भित करता है।BEFORE INSERTका उपयोग सत्यापन/संशोधन के लिए,AFTER INSERTका उपयोग संबंधित टेबल्स में कार्रवाई के लिए करें। ट्रिगर के अंदर जटिल तर्क से बचें क्योंकि यह प्रदर्शन को प्रभावित कर सकता है।