[Php-it] [mezzo-OT] Variazioni temporali tabella
Domenico L.
domenico.lorusso at pleiade.it
Fri Sep 29 14:39:52 CEST 2006
Francesco F ha scritto:
>
>
> Visto che siamo a venerdì....
> Mi rimetto alla vostra esperienza per avere qualche dritta sulla
> soluzione migliore al seguente problema. Ho una classica anagrafica
> soggetta nel tempo a variazioni e devo tenere traccia di queste
> variazioni. Fondamentalmente dovrei avere inline (ovvero nella tabella
> anagrafica) l'ultima "versione" del nominativo ma facendo una ricerca
> su un'azione svolta n mesi fa, dovrei avere la corretta "versione" nel
> tale momento. Sinceramente vorrei evitare di duplicare n volte tale
> record in tabella e di utilizzare un'altra tabella per tenere le
> modifiche ma in questo modo penso di non riusce ad accedere ai dati
> corretti direttamente via sql (cosa assolutamente necessaria per
> generare n-mila report!)
>
> Francesco
Tralascio l'esperienza e ti do la risposta di snodgrass e del tsql
La soluzione migliore che tu possa pensare è quella di menttere due
campi dal-al che ti dicono il tempo di validità dei record.
Non avrai più update o delete ma solo insert (o meglio avrai degli
update sui tempi di validità)
Questo se stai progettando la tua base dati è la cosa migliore.
Se sceglierai questa opzione vale la pena fare delle considerazione
aggiuntive sul db e porsi delle serie domande su che dbms si intenda
utilizzare.
Se al contrario vuoi una soluzione empirica comoda che permetta di
estrapolare dei dati storici non modificabili, una sorta di log
la soluzione più semplice è quella di crearti una tabella di storico con
i campi:
tabellaOrigine
dal
al
chiave/i (in testo o in numero devi vedere in base al db)
xml del record prima della modifica
Ciao
--
Domenico L.
per stupire mezz'ora basta un libro di storia,
io cercai di imparare la Treccani a memoria... [F.d.A.]
More information about the Php-it
mailing list