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

MySQL ट्रिगर तालिका को अपडेट नहीं कर सकता - त्रुटि 1442 प्राप्त करना

लक्षण यह है कि आप एक UPDATE चला रहे हैं (सभी पंक्तियों के लिए) INSERT . के अंदर ट्रिगर - दोनों तालिका को संशोधित करते हैं, जिसकी अनुमति नहीं है।

उस ने कहा, अगर मुझे आपके ट्रिगर के इरादे का सही अनुमान है, तो आप सभी . को अपडेट नहीं करना चाहते हैं पंक्तियाँ, लेकिन केवल नई सम्मिलित पंक्ति। आप इसे आसानी से

. के साथ हासिल कर सकते हैं
CREATE TRIGGER sum
BEFORE INSERT
ON news
FOR EACH ROW
SET NEW.sum = (NEW.int_views + NEW.ext_views)/NEW.pageviews

ध्यान रखें कि यह एक BEFORE INSERT है ट्रिगर, जैसा कि आप तालिका में लिखे जाने से पहले पंक्ति को बदलना चाहते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. रिकर्सिव फ़ंक्शन के साथ इको मेनू ट्री

  2. App.config में MySQL कनेक्शन स्ट्रिंग को स्टोर करते समय, प्रदातानाम प्रॉपर्टी को किस मान पर सेट किया जाना चाहिए?

  3. mysql-apt-config [उबंटू 14.04] में 'ओके' का चयन नहीं कर सका

  4. एक MySQL क्वेरी में पूर्णांक उद्धृत करने के नुकसान?

  5. तालिका 'केवल पढ़ने के लिए' है