Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

मैं MySQL में 2 टेबल से DELETE करने के लिए एक ट्रिगर चाहता हूं

ट्रिगर से एक साथ दो तालिकाओं से हटाएं:

तालिकाओं में डेटा अखंडता को लागू करने के लिए ट्रिगर का उपयोग किया जाता है। आप किसी भी तालिका से एक बार में हटाने के लिए ट्रिगर का उपयोग कर सकते हैं।

ट्रिगर्स को इनिशियलाइज़ करने से पहले हमें mysql डिलीमीटर ऑपरेटर को अस्थायी रूप से बदलना होगा क्योंकि ट्रिगर्स सेमीकोलन ; का उपयोग करते हैं। ट्रिगर के भीतर कई sql कमांड निर्दिष्ट करने के लिए ऑपरेटर।

चरण 1 वर्तमान सीमांकक बदलें:

delimiter $$

चरण 2 ट्रिगर बनाएं:

CREATE TRIGGER `blog_before_delete`     
  AFTER DELETE ON `blog`     
  FOR EACH ROW     
BEGIN
  DELETE FROM blog_tags where blogid = OLD.id;
  DELETE FROM blog_comments where blogid = OLD.id;
END
$$

चरण 3 पिछले सीमांकक को पुनर्स्थापित करें:

delimiter ;

स्पष्टीकरण:

OLD एक अंतर्निहित कीवर्ड है और उस ब्लॉग तालिका पंक्ति को संदर्भित करता है जिसे हम हटा रहे हैं। Mysql ट्रिगर चलाता है blog_before_delete जब भी हम ब्लॉग तालिका में कोई प्रविष्टि हटाते हैं। मैं ट्रिगर विफल रहता है, फिर हटाना वापस लुढ़क जाता है। यह परमाणुता, संगति, अलगाव और स्थायित्व सुनिश्चित करने में सहायता करता है हमारे डेटाबेस में।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कैसे बताना है कि कॉलम mysqli का उपयोग कर प्राथमिक कुंजी है या नहीं?

  2. PHP और MySQL के साथ मेरे हैश को सलाम करना

  3. उपयोगकर्ता खाता प्रबंधन, भूमिकाएं, अनुमतियां, प्रमाणीकरण PHP और MySQL - भाग 4

  4. C++ में MySQL से utf-8 डेटा प्रोसेस करें और परिणाम वापस दें

  5. चयन करें जो किसी भी पंक्ति में नहीं होने वाले मानों की सूची देता है