Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So entfernen Sie kontinuierlich alles, was älter als die neuesten 10 Einträge einer MySQL-Datenbank ist (möglicherweise in JPQL / JPA)

Dies ist ein komplexes Problem, denn wenn Ihre Tabelle nicht mit einer anderen Tabelle verknüpft ist, könnte die neueste Zeile in Tabelle A möglicherweise auf eine sehr alte Zeile in Tabelle B verweisen. In diesem Fall ist die Zeile von Tabelle B jedoch sehr alt , Sie können es nicht löschen, ohne die Kohärenz Ihrer Datenbank zu brechen.

Es "kontinuierlich" zu tun, ist noch schwieriger (sprich:unmöglich). Ich würde zuerst

  • überprüfen, ob es wirklich nötig ist. Festplatten sind billig und 10 Einträge in einer Unternehmensdatenbank sind wirklich nichts.
  • Implementieren Sie einen Löschmechanismus und führen Sie ihn hin und wieder aus, wenn die Datenbank nicht von jemand anderem verwendet wird.