Lena Zimmermann: Archivdatenbank. Aufbau und Abfragen?

Beitrag lesen

Hallo zusammen,

in meiner Anwendung (PHP 5, MySql 5) muss für bestimmte Tabellen jede Datensatzänderungen gespeichert werden (der Datenbanklog reicht nicht, ich muss auch später noch drauf zugreifen können).

Ich hatte mir überlegt, eine zweite Tabelle, eine Archivtabelle, aufzubauen. Ein Beispiel:

user: userid, first_name, last_name
(1, Lena, Zimmermann)

user_archiv: userid, timestamp, column, txt
(
1, timestamp1, 2, Lena
1, timestamp1, 3, Zimmermann
1, timestamp2, 2, Lisa
1, timestamp3, 2, Linda
1, timestamp4, 3, Müller
)

Aus Tabelle zwei bekomme ich (unter MySQL!) schon den aktuellsten Datensatz heraus (Die Groupfunktion ist hier ja nicht ganz sauber umgesetzt), bzw auch den zu einem bestimmten Zeitpunkt.

Jetzt aber meine Frage: Gibt es die Möglichkeit mit einer Abfrage folgendes Ergebnis zu bekommen:

1,Lena, Zimmermann
1,Lisa, Zimmermann
1,Linda, Zimmermann
1,Linda, Müller

Also zu jeder Änderung den aktuellen Datensatz. Natürlich geht das nur, wenn alle Spalten von einem Datensatz sind, oder aber man lagert die Speicherung des eigentlichen Datums aus. Hier aber mal vereinfacht eben nur Strings.

Ich habe schon ein bißchen gesucht, tue mich aber mit den Suchbegriffen schwer.

Viele Grüße und Danke :o)

Lena