触发器连续获取Oracle Sql中最后15分钟的数据

问题描述 投票:0回答:1

我有一个名为 SALES_ORDER 的表。数据被刷新,新数据不断进入该表。我想编写一个触发器来从此表中获取最后 15 分钟的数据并将其插入到另一个备份表/临时表(可能称为 TEMP)中。

这就是我正在尝试的

CREATE OR REPLACE TRIGGER FETCH_DATA 
AFTER DELETE OR INSERT OR UPDATE ON UFD_BASE.SALES_ORDER 
BEGIN
  IF UPDATE_DATE > sysdate - interval '15' minute
  ...
  NULL;
END;

但它不正确或不完整。我对触发器或sql了解不多。有人可以帮我弄清楚如何做到这一点吗?

triggers oracle-sqldeveloper
1个回答
0
投票

触发器不是执行此操作的正确工具。它会在表上执行某些操作时触发 - 当插入、更新或删除行时 - 不是每 15 分钟

为了这样的目的,你应该

  • 创建一个存储过程来完成部分工作智能
  • 创建一个
  • 数据库作业,每 15 分钟运行该过程
© www.soinside.com 2019 - 2024. All rights reserved.