【发布时间】:2015-02-28 22:26:43
【问题描述】:
如何获取更新行的更改通知,例如行数据/行描述。我能够获取更新的行 ID。
我需要根据更新 Table1 后收到的行 ID 将 Table1 与 Table2 同步。我在几个网站上阅读过有关通知的信息,但找不到有关如何根据通知更新表格的任何信息。请帮忙!!
下面是我在Oraclewebsite上找到的一些帮助信息:
中间层的应用程序需要快速访问缓存副本 数据库对象的数量,同时保持缓存尽可能最新 与数据库的关系。缓存的数据变得过时或“陈旧” 当事务修改数据并提交时,从而将 应用程序有访问不正确结果的风险。如果申请 使用数据库更改通知,那么 Oracle 数据库可以发布一个 注册对象发生更改时通知详细信息 关于发生了什么变化。
响应通知,应用可以刷新缓存 通过从后端数据库获取数据。
【问题讨论】:
-
Table1和Table2,大概是指数据库中的表吧?不是用户界面中的表。Table1和Table2都在 Oracle 数据库中吗?它们在同一个 Oracle 数据库中吗?还是不同的 Oracle 数据库?您是否有理由不使用 Oracle 附带的内置复制解决方案之一来编写您自己的自定义代码? -
是的,它们是数据库中的表。目前它们在同一个数据库中,但实际情况稍后会更改为跨多个平台的不同类型的数据库
-
已经有复制技术可以做到这一点(例如甲骨文的金门)——我会非常犹豫是否尝试自己从头开始构建这种技术。您是否试图只允许
Table2位于非 Oracle 数据库上?还是允许Table1也位于非Oracle 数据库中? -
只有一个表在数据库类型方面会有所不同
-
抱歉,我不确定我是否理解您的意思。我想您可能会说源表
Table1将始终驻留在Oracle 数据库中,但目标表Table2可能驻留在Oracle 数据库或非Oracle 数据库中。如果是这样的话,我仍然会使用其中一种内置的复制技术,而不是尝试自己编写。
标签: java database oracle jdbc notifications