In theorie kan een trigger een overzichtstabel nauwkeurig up-to-date houden, zolang:
- Je schakelt de trigger niet uit
- U werkt de overzichtstabel niet rechtstreeks bij
- U brengt geen wijzigingen aan in de brongegevens via TRUNCATE TABLE (zoals u heeft opgemerkt)
Ook:
- U moet de overzichtstabel voorzien van een correcte beginwaarde
- Je moet InnoDB gebruiken voor zowel de brontabel als de overzichtstabel, dus updates zijn atomair
Het bijhouden van een overzichtstabel is een voorbeeld van denormalisatie . Zoals bij alle denormalisatie, riskeert dit gegevensafwijkingen. Je bent verantwoordelijk voor het handhaven van de gegevensintegriteit; de database is beperkt in de mate waarin het u daarbij kan helpen.
Ik raad u aan de overzichtstabel van tijd tot tijd nogmaals te controleren (bijv. elk uur kan voldoende zijn) om er zeker van te zijn dat deze niet is gesynchroniseerd, en corrigeer deze als dat wel het geval is. Het is aan jou om dit te doen, omdat de database het niet voor je kan controleren.