JDBC BasicNotification: Can you use a where clause?

I have a need to use a basicnotification on a shared DB table. I need to be able to pull records that belong to my application and leave the others alone. Can you do this with the basicNotification


There is no “where” option when you create a basic notification. The polling process will just select data based on the rows you choose. The basic notification relies on you to create the triggers and buffer tables manually, so it will be difficult to get the results you want with your current shared buffer table [if you use Basic Notification and enable it to delete records, it will select all rows from the table then delete them]. This will compete with other applications polling the same table.

I suggest you modify the triggers to include a “where” clause, and have two [or more] buffer tables - one for each application polling. Otherwise, the “non-basic” notification options (eg. insertNotification) allow you to set where/when clauses and automatically build the triggers/buffer tables for you.


Another option is to set up views on the buffer table that only display the rows you want to trigger on and set the notification on the view instead of the table.