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

MySQL पुराने रिकॉर्ड को हटाने और नया डालने के लिए ट्रिगर करता है

इसकी सबसे अधिक संभावना है क्योंकि आपका ट्रिगर भी मौजूद नहीं है। समस्या यहाँ है

create
  trigger 'copy_eform_data'

सिंगल कोट्स के साथ copy_eform_data एक स्ट्रिंग है।

इस पोस्ट पर एक नज़र डालें:सिंगल कोट्स, डबल कोट्स और बैकटिक्स का उपयोग कब करें?

साथ ही आपको NEW . के बारे में पढ़ना चाहिए और OLD ट्रिगर्स में कीवर्ड। आपका ट्रिगर शायद कभी किसी लाइन से मेल नहीं खाता।

और यहाँ

where ack_no=select max(s.ack_no) from asdb.sda_user_eform_data s

आप कोष्ठक खो रहे हैं।

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

FROM yourTable
ORDER BY when_was_the_entry_created_or_something DESC 
LIMIT 5

आपके पास

. जैसे कॉलम हो सकते हैं
created timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

अपने ORDER BY . में उपयोग करने के लिए . और आप शायद उस कॉलम पर एक इंडेक्स चाहते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कोडनिर्देशक और MySQL में दो तिथियों की तुलना करें

  2. mysql में इंडेक्स बनाएं काम नहीं कर रहा है

  3. pymysql callproc() बाद के चयनों को प्रभावित करता प्रतीत होता है

  4. MySQL:पिछले 24 घंटों के लिए घंटे के हिसाब से रिकॉर्ड डाला गया

  5. mysql में महीने की संख्या के बजाय महीने का नाम प्रदर्शित करें