数据库更改通知 - 如何获得 Oracle 表更改的通知

问题描述

我尝试(但失败)使用 JDBC 来获取有关数据库表更改的通知。在此处寻找答案时,我发现数据库更改通知自 12c 以来已从 JDBC 中删除。

所以 - 而不是问为什么我的代码失败了,我的问题是 - 如果我不能使用上述方法,我怎么能得到表格更改的通知?表中的更改是指插入、更新和删除,而不是 ddl 中的更改。

我希望能够以编程方式注册/添加侦听器,而不是依赖 dbadmin 在数据库中添加触发器或 plsql 脚本。

由于代码应该适用于各种客户端安装,因此我不能非常具体地说明它适用于哪个 Oracle 版本。我猜 19 是一个合理的目标版本。

解决方法

Continuous Query Notification 是否符合要求?

JDBC 驱动程序可以向数据库注册 SQL 查询并接收通知以响应以下内容:

与查询关联的对象上的 DML 或 DDL 更改

影响结果集的 DML 或 DDL 更改

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...