На теория тригерът може да поддържа точно актуализирана обобщена таблица, стига:
- Не деактивирате тригера
- Не актуализирате директно обобщената таблица
- Не правите промени в изходните данни чрез TRUNCATE TABLE (както отбелязахте)
Също така:
- Трябва да заредите обобщената таблица с правилна начална стойност
- Трябва да използвате InnoDB както за изходната таблица, така и за обобщената таблица, така че актуализациите са атомарни
Поддържането на обобщена таблица е един пример за денормализиране . Както при всяка денормализация, това крие риск от аномалии в данните. Вие носите отговорност за поддържането на целостта на данните; базата данни е ограничена в това колко може да ви помогне да направите това.
Препоръчвам ви да проверявате отново обобщената таблица от време на време (напр. всеки час може да е достатъчно), за да сте сигурни, че не е излязла от синхронизация, и да я коригирате, ако е така. От вас зависи да направите това, защото базата данни не може да го провери вместо вас.