Christoph Wille wrote:
> * Zus�tzliche Spalten einf�hren: Author, RevisionDate; die Zeile mit
> dem aktuellsten RevisionDate ist die letztge�nderte Zeile, die
> letztge�nderte wird bei einer �nderung quasi dupliziert. Meines
> Erachtens bescheiden abzufragen ("Liste alle Zeilen mit den
> letztge�nderten Werten")
Damit musst du den Prim�rschl�ssel �ndern. Es g�be dann ja mehrere
Eintr�ge zur selben ID, die nur in Verbindung mit der Revisionsnummer
eindeutig sind.
> * Eine einzige Spalte, RevisionHistory (vartext). Dort ein XML
> reingeben das die ganze Revisionhistory speichert. Nachteil: direkt
> abfragen kann man es nicht ("Welche Zeile wurde am h�ufigsten
> ge�ndert")
Das macht Abfragen in der Form "�nderungen von xyz?" sehr aufw�ndig,
weil du alle XML-Bl�cke einlesen musst und selbst auswerten musst.
> * Eine separate Change History Tabelle die so aussieht wie im ersten
> L�sungsansatz dargestellt. Die aktiven Eintr�ge sind einfach greifbar,
> Changes k�nnen leicht abgefragt werden, sogar UNION ist m�glich.
> (Auch der letztge�nderte Eintrag wird hier dupliziert um zu wissen
> wer die letzte �nderung verbrochen hat). Vorteil: die
> Produktionstabelle mu� nicht angetascht werden.
>
> ... andere Ideen? Oder was w�rdet Ihr von den vorgestellten Ans�tzen
> pr�ferieren?
Mit Sicherheit die letzte.
Andererseits erzeugst du damit einiges an Volumen, auch wenn s�ch
nur einzelne Werte �ndern.
Alternativ, eine Tabelle in der Form:
ID - ID des Datensatzes
UpdatedBy, UpdatedAt - Benutzername und Zeitstempel
FieldName - Name des ge�nderten Feldes
OldValue - Wert vorher
NewValue - Wert nachher
So kannst du sp�ter eine History aufmachen in der Form:
<UpdatedBy> am <UpdatedAt>, <FieldName>: <OldValue> => <NewValue>
Gru�,
Markus
_______________________________________________
Coffeehouse Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/coffeehouse