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

रोलिंग के आधार पर MySQL से पुरानी पंक्तियों को हटाने का सबसे अच्छा तरीका क्या है?

इवेंट बनाने का प्रयास करें जो आपके इच्छित समय अंतराल के बाद स्वचालित रूप से डेटाबेस पर चलेगा।

यहां एक उदाहरण दिया गया है:यदि आप किसी तालिका 'टेबलनाम' से 30 दिनों से अधिक पुरानी प्रविष्टियों को हटाना चाहते हैं, जिसमें कॉलम प्रविष्टि 'डेटाटाइम' है। फिर निम्नलिखित क्वेरी हर दिन चलती है जो आवश्यक सफाई कार्रवाई करेगी।

CREATE EVENT AutoDeleteOldNotifications
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY 
ON COMPLETION PRESERVE
DO 
DELETE LOW_PRIORITY FROM databaseName.tableName WHERE datetime < DATE_SUB(NOW(), INTERVAL 30 DAY)

हमें ON COMPLETION PRESERVE जोड़ने की आवश्यकता है प्रत्येक रन के बाद घटना को रखने के लिए। आप यहां अधिक जानकारी प्राप्त कर सकते हैं:http://www.mysqltutorial .org/mysql-triggers/working-mysql-scheduled-event/



  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 n अंतिम पंक्तियों में से चुनें

  2. MySQL को कैसे प्रबंधित करें - Oracle DBA के लिए

  3. रेल 3 ActiveRecord:एसोसिएशन पर गिनती के आधार पर आदेश

  4. MySQL में LEFT () फ़ंक्शन कैसे काम करता है

  5. टर्मिनल के भीतर से mysql का उपयोग करके चेतावनी संदेशों को रोकें, लेकिन पासवर्ड बैश स्क्रिप्ट में लिखा गया है