sql >> Databasteknik >  >> RDS >> Mysql

Hur man kontinuerligt tar bort allt äldre än de senaste 10 posterna i en MySQL-databas (möjligen i JPQL/JPA)

Detta är ett komplext problem, eftersom om inte din tabell inte är länkad till någon annan tabell, kan du mycket väl ha den senaste raden i tabell A som refererar till en mycket gammal rad i tabell B. I det här fallet, även om tabell B:s rad är mycket gammal , du kan inte ta bort den utan att bryta sammanhållningen i din databas.

Att göra det "kontinuerligt" är ännu svårare (läs:omöjligt). Jag skulle först

  • undersök om det verkligen behövs. Diskar är billiga, och 10 poster i en företagsdatabas är egentligen ingenting.
  • implementera någon rensningsmekanism och exekvera den då och då, när databasen inte används av någon annan.


  1. Hur man kopierar data från en databas/tabell till en annan databas/tabell

  2. MySQL - PHP unika värden från rader

  3. Hur man får året från en Datetime-kolumn i MySQL

  4. MySQL Välj Where In Many to Many