Ich baue eine Content-Management-Website auf, die auch andere Funktionen enthalten soll. Wenn ein Admin-Mitglied ein Element über das Admin-Panel löscht, möchte ich, dass dieses Element für 30 Tage in einen "Papierkorb" verschoben (und dann automatisch gelöscht) wird.
Wie lässt sich diese Funktion am besten implementieren?
Eine Idee, die ich hatte, war, eine Bit-Spalte "Gelöscht" in meiner Tabelle zu haben und dann nur Datensätze anzuzeigen WHERE Hide=0
. Dies würde jedoch bedeuten, dass ich mich jedes Mal daran erinnern müsste, diese Bedingung zu setzen, wenn ich SELECT
vom Tisch.
Eine andere Idee, die ich hatte, war, eine zweite Tabelle zu haben, in die die Datensätze beim Löschen verschoben würden. Da ich jedoch viele Tabellen auf meiner Website verwende, würde dies bedeuten, dass ich die Anzahl der Tabellen verdoppeln müsste und doppelte Tabellenstrukturen hätte (was in Zukunft zu Konsistenzproblemen führen könnte).
Im Idealfall würde ich gerne eine Tabelle "RecycleBin" haben, in die alle Datensätze verschoben werden, aber diese könnte 100 Spalten enthalten, um Daten aus allen verschiedenen Tabellen speichern zu können.
Wenn jemand eine andere Idee hat, wäre er sehr dankbar.
Danke.