在Java客户端应用程序中插入到进程时检索新的oracle表记录

iih3973s  于 2023-02-07  发布在  Java
关注(0)|答案(1)|浏览(98)

我正在尝试从Java客户端应用程序的表中检索新插入( Spring JMS),进行一些处理并将它们发送到消息代理。我无法访问任何CDC工具,如Goldengate。我只需要新的插入,而不需要更新或删除。我很难找到这样做的方法。有这样做的方法吗?我读到有一个选项可以使用触发器来完成这些操作,但是它在数据库上的吞吐量会很高吗?因为这个表在一天中会得到很多插入(大约在一天中插入5万条记录)。
先谢了

lx0bsm1f

lx0bsm1f1#

每天50,000行实际上是一个相当小的量。一些数据仓库表每天得到5,000万行。因此插入触发器不太可能对加载作业产生任何明显的影响。添加一个日期列(例如LOAD_DATE),并让插入前触发器赋值:new.LOAD_DATE:= SYSDATE。
也就是说,如果希望避免触发器,可以修改装载作业本身,以便用SYSDATE装载这样一个日期列。
无论使用哪种方法,检索都很简单:每天检索记录时,记录检索到的最大LOAD_DATE值。2第二天,只提取LOAD_DATE〉=该值的记录。

相关问题