Oracle: Mit Trigger eine Java Methode aufrufen

sceppi

Mitglied
Hallo,
ist es irgendwie möglich mit einem Trigger eine Javamethode aufzurufen und er am besten auch noch Argumente zu übergeben?

Ziel ist es, eine Art Journaling Funktion zu implementieren. Zur Zeit schreibt der Trigger die veränderten Werter einer Tabelle in eine extra Tabelle. Die Änderungen geschehen aber teilweise auserhalb der eigentlichen Anwendung. Und jetzt muss die Anwendung immer prüfen, ob neue Werte in der Journal Tabelle sind und diese dann verarbeiten. Das ganze ist nicht so performant, so dass eine direkte Verarbeitung nach dem Auslösen des Triggers vorteilhafter wäre.

Ist sowas in Oracle möglich?

Beste Grüße
sceppi
 
Gegenvorschlag:

Trigger schreibt Änderungen in "Tabelle_neu"
Anwendung verarbeitet "Tabelle_neu" zeilenweise, sofern Zeilen da sind
Anwendung fügt Zeile aus "Tabelle_neu" an "Tabelle_alt" an
Anwendung löscht Zeile aus "Tabelle_neu"

Das verringert dein Performance-Problem bezüglich ständigem Nachsehen, ob in dem Trigger-erzeugten Wust an Daten irgendwo was neues vorkommt auf ein einfaches regelmäßiges Nachsehen.

gruß
shutdown
 
hallo,
danke für die Hilfe.
Aber genau so wird es jetzt ja schon gemacht.
Aber: Der Trigger kann mal viele und mal wenige Einträge erzeugen, oder auch mal keine. Wichitg ist aber, dass Wenn die Anwendung auf Datenbank zugreift, die notwendige Tabelle immer aktuell ist. Eine Aktualisierung vor Zugriff fällt flach, weil wenn viele zu aktualisierende Daten da sind, die Geschichte zu lange dauert.
Deswegen sollte der Trigger gleich noch eine Methode aufrufen, welche die Aktualisierung vornimmt.

Ach ja, bevor ich es vergess: es geht dabei nicht einfach nur um ein Zeilen anfügen. Mit den veränderten Zeilen werden noch verschiedene Opperationen durchgeführt.
 
Zurück