Wenn ich dich richtig verstehe, versuchst du:
- Beenden Sie die Einfügung und ersetzen Sie sie durch eine Einfügung in eine andere Tabelle (bestimmt durch den Auslöser)
- Aktualisieren Sie eine Übersichtstabelle (
delete
/insert
), um auf die neue Zeile zu zeigen.
Ihr Problem ist, dass 1 verhindert, dass 2 passiert? Das ist logisch, weil Sie die Einfügung gestoppt haben, also haben Sie auch jegliche Verarbeitung der Einfügung gestoppt.
Um dies zu lösen, haben Sie also mehrere Möglichkeiten (Optionen 1 und 2 sind ähnlich)
- Rufen Sie
update_object_last_known_position()
auf ausinsert_position()
und haben nur einen Trigger - Erstellen Sie eine Wrapper-Methode für beide
insert_position()
undupdate_object_last_known_position()
und haben nur einen Trigger. - Setzen Sie den Auslöser für
update_object_last_known_position()
auf allen Tabellen, dieinsert_position()
könnte eingefügt werden in.