/ / MySQL अपडेट एक ही टेबल पर TRIGGER - mysql, संग्रहीत-प्रक्रिया, ट्रिगर, sql-update

MySQL अद्यतन एक ही टेबल पर TRIGGER - mysql, संग्रहित प्रक्रियाओं, ट्रिगर्स, एसक्यूएल-अपडेट

मैं एक क्षेत्र को अद्यतन करने की कोशिश कर रहा कुछ समस्याएं हैंउसी तालिका के दूसरे कॉलम को अपडेट करने के बाद एक टेबल का। मुझे पता है कि मैं एक ही टेबल पर एक ट्रिगर कर सकता हूं मैं अपडेट कर रहा हूं, लेकिन मुझे इसे करने के लिए एक चाल की आवश्यकता है।

उदाहरण के लिए, मेरी तालिका है:

ParentName | Age | Update_date

John         12    2014-12-01
Eric         23    2014-4-01
Jack         32    2014-5-01
Jill         33    2014-2-01

अद्यतन करने के बाद age, मुझे अपडेट करने की आवश्यकता है update_date, मैं अपनी वास्तविक स्थिति मैं इसे अद्यतन क्वेरी से सीधे नहीं कर सकता, क्योंकि मैं चाहता हूं कि यह नियम इस बात पर निर्भर करता है कि मैं टेबल को कैसे अपडेट करता हूं।

मैं संग्रहीत प्रक्रियाओं के साथ ऐसा करने की कोशिश कर रहा हूं, लेकिन मैं उन्हें अच्छी तरह से नहीं जानता।

किसी के पास कोई विचार है या मुझे समझा सकता है कि यह एक थकाऊ प्रक्रिया के साथ कैसे किया जाए?

उत्तर:

जवाब के लिए 0 № 1

आपका ट्रिगर इस तरह हो सकता है:

DELIMITER //

CREATE TRIGGER persons_updt BEFORE UPDATE ON persons
FOR EACH ROW
IF (NEW.age <=> OLD.age) THEN SET NEW.Update_date=current_date();
END IF//

DELIMITER ;

यहाँ मैं "का उपयोग कर रहा हूँ अशक्त-सुरक्षित ऑपरेटर <=>। कृपया एक बेला देखें यहाँ.