Gast
#2147627
Ich versuche mein Problem mal möglichst einfach darzustellen: NUTZER können OBJEKTE auf EINHEITEN anwenden. Aus Statistikgründen möchte ich mir merken, welcher Nutzer welches Objekt auf welche Einheit angewendet hat. Ich habe nun eine Tabelle der folgenden Art (vereinfacht): Tabelle OBJEKTE_BENUTZT: id | objekt_id | benutzt_von | angewendet_auf | timestamp benutzt_von ist ein Fremdschlüssel auf den Nutzernamen in der Nutzertabelle und wird auf NULL gesetzt wenn der Nutzer gelöscht wird. (ON DELETE SET NULL) angewendet_auf ist ein Fremdschlüssel auf die Einheiten-ID in der Einheitentabelle und wird auf NULL gesetzt wenn die Einheit gelöscht wird. (ON DELETE SET NULL) Das mache ich weil ich mir die Statistik sowohl pro Nutzer als auch pro Einheit merken will, und das eine auch ohne das andere existieren kann, da Einheiten unter Nutzern gehandelt werden können. (Wieviele OBJEKTE hat der NUTZER schon eingesetzt? Wieviele OBJEKTE wurden auf die EINHEIT schon angewendet?) Erst wenn beides verschwindet - also auf NULL gesetzt wird - hat der Eintrag keinen Aussagewert mehr und soll daher aus der Tabelle OBJEKTE_BENUTZT gelöscht werden. Meine bisherige Lösung ist einfach in regelmäßigen Abständen mit einem "DELETE FROM OBJEKTE_BENUTZT WHERE benutzt_von = NULL AND angewendet_auf = NULL" die überschüssigen Einträge zu löschen. Daher wollte ich wissen ob es eine Möglichkeit gibt, dass der Eintrag automatisch verschwindet, sobald beide Felder auf NULL gesetzt werden.