Innanzitutto una nota, ho pensato che forse questa domanda appartenesse allo scambio di database, ma penso che sia più ampiamente correlata a una soluzione di programmazione nel suo insieme che ai database. Passerà allo scambio di database se la gente pensa che sia il migliore.
Mi chiedevo quando una tabella del database avrebbe dovuto aggiungere un timestamp creato e aggiornato?
La prima risposta ovvia è che se una logica aziendale deve sapere quando è stato aggiornato qualcosa (come una data di completamento della transazione, ecc.), Deve entrare.
Ma per quanto riguarda i casi di logica non aziendale? Ad esempio, posso pensare a scenari in cui sarebbe davvero utile conoscere l'ora della data in cui le righe sono state modificate per aiutare a individuare i guasti, ad es. Alcune logiche aziendali non riescono e, guardando le righe del database correlate, è possibile identificare che una riga viene aggiornata prima un'altra riga che causa l'errore.
Con questo caso d'uso, sarebbe logico dare a ogni tabella un aggiornamento e creare un timestamp (tranne forse le tabelle enum più banali che non verrebbero aggiornate da nessuna parte dell'applicazione).
Dare ad ogni tabella un timestamp è sicuramente un ottimo modo per impantanare rapidamente un database (anche se potrebbe essere sbagliato).
Quindi, quando una tabella di database dovrebbe creare e aggiornare i timestamp?