2010-10-27 9 views
0

Il existe une table de base de données à des fins de consignation uniquement, de sorte que les anciens enregistrements sont inutiles. Existe-t-il un moyen facile de supprimer automatiquement les anciens enregistrements et de ne conserver que les enregistrements les plus récents (par exemple, les enregistrements créés au cours des 7 derniers jours ou les 1 million d'enregistrements les plus récents). La table utilise le moteur MyISAM et possède une colonne d'horodatage mais n'a pas de clé primaire (pour une insertion rapide).Comment supprimer automatiquement les anciens enregistrements d'une table de base de données?

Répondre

2

Configurez un travail cron pour exécuter une requête à cet effet.

0

Vous pouvez mettre votre Logic dans Insert Trigger pour supprimer vos anciens enregistrements

+0

Mais cela ralentirait certaines insertions, n'est-ce pas? – powerboy

+0

vous pouvez mettre une certaine condition dans la procuration ex: si le nombre total d'enregistrements dans plus de 1 million de den le déclencheur doit tirer de cette façon, vous pouvez maintenir la même performance. –

Questions connexes