Search code examples
javadatabaseoracle-databaseojdbcchange-notification

Database change notification - how get notified of changes in Oracle tables


I tried (and failed) using JDBC to get notifications on changes in database tables. When looking for answers here I discovered that Database Change Notification was removed from JDBC since 12c.

So - instead of asking why my code failed my question is - If I cant use the above method how can I get notified of changes in tables? With changes in table I mean inserts, updates and deletes, not changes in ddl.

Preferably I'd like to be able to register/add listeners programmatically instead of depend on dbadmin to add triggers or plsql scripts in the database.

Since the code is supposed to work at various client installations I cant be very specific with which Oracle version this is intended for. I'm guessing 19 is a reasonable version to aim for.


Solution

  • Would Continuous Query Notification fit the bill?

    The JDBC drivers can register SQL queries with the database and receive notifications in response to the following:

    DML or DDL changes on the objects associated with the queries

    DML or DDL changes that affect the result set