Ik denk dat je zoiets vrij gemakkelijk zou kunnen bereiken, ervan uitgaande dat je het niet erg vindt om wat extra tabellen en triggers in je database te maken, en dat de monitoring java-applicatie de database zou moeten pollen in plaats van specifiek triggers te ontvangen.
Ervan uitgaande dat de tabel die u wilt bewaken er ongeveer zo uitziet:
CREATE TABLE ToMonitor ( id INTEGER PRIMARY KEY, value TEXT );
Vervolgens maakt u een tabel om de wijzigingen bij te houden, en een trigger die die tabel vult:
CREATE TABLE InsertedRecords( value TEXT );
CREATE TRIGGER trig AFTER INSERT ON account
FOR EACH ROW INSERT INTO InsertedRecords( value ) VALUES ( NEW.value );
Hierdoor wordt de tabel InsertedRecords gevuld met elke invoeging die in ToMonitor plaatsvindt.
Dan hoeft u alleen uw monitoring-app zo in te stellen dat periodiek SELECT * from InsertedRecords
, onderneem de juiste actie en verwijder vervolgens de records uit InsertedRecords
EDIT:Een klein alternatief, als je een beetje C/C++-codering niet erg vindt, zou zijn om volg de instructies hier om een aangepaste SQL-functie te maken die uw monitoringtoepassing in actie heeft gebracht, en roep vervolgens die SQL-functie aan vanuit de trigger die u had gemaakt.