fastix®: elegante Lösung für Tabellen mit Spaltenversionen

Beitrag lesen

Moin!

Aus Deinem Posting geht nicht hervor wozu Du das brauchst. Möglich wäre es z.B. bei einem "Update" eines Datensatzes den originären Datensatz zu erst in einer weiteren Tabelle zu archivieren und danach via Update zu verändern.

Das hält die Datentabelle und vor allem die Indexe klein, was - je nach Aufgabe - unter Performance-Gesichtspunkten ideal sein _kann_.

Die Archiv-Tabelle hat dann entweder eine zusätzliche Spalte für den Zeitpunkt der Übernahme oder der Zeitpunkt der Eintragung wird in der Original-Tabelle gespeichert und beim Archivieren übernommen. In diesem Fall erhält die Archiv-Tabelle eine weitere ID für Sortierungen etc.  In jedem Fall wird die ID des originalen Datensatzes in eine Spalte geschrieben, welche die Original-Id enthält - die darf dann natürlich weder ein Autoinkrement noch einen Unique-Index haben.

So ein Archiv macht natürlich vor allem dann Sinn, wenn der Versionsvergleich nicht die Hauptfunktion der gesamten Anwendung ist, sondern in der Hauptsache die aktuelle Version abgefragt wird. Gerade bei der Frage nach Sinnhaftigkeit einer Datenstruktur muss die Frage nach deren Verwendung im Vordergrund stehen. Aber da sind wir wieder beim ersten Satz.

MFFG (Mit freundlich- friedfertigem Grinsen)

fastix