Stored procedures 通过触发器在OracleDB中的新数据上运行过程

Stored procedures 通过触发器在OracleDB中的新数据上运行过程,stored-procedures,triggers,Stored Procedures,Triggers,我编写了一个过程,通过从其他四个表中派生数据来更新一个表。该过程本身工作正常,但我需要表始终保持最新,因此每当四个表中的一个表发生更改时,我都会从触发器调用该过程。 除了一个细节外,这也很好。该过程在更改之前从表中派生数据,因此update/delete/insert触发了触发器。 触发器在u/d/i之后为行级别,但即使将其更改为after语句也无济于事。 不使用触发器实际上不是一个选项,因为需要同步。将其更改为物化视图似乎是一个好主意,但这些视图中不允许使用neede计算,而且非物化视图的速度

我编写了一个过程,通过从其他四个表中派生数据来更新一个表。该过程本身工作正常,但我需要表始终保持最新,因此每当四个表中的一个表发生更改时,我都会从触发器调用该过程。 除了一个细节外,这也很好。该过程在更改之前从表中派生数据,因此update/delete/insert触发了触发器。 触发器在u/d/i之后为行级别,但即使将其更改为after语句也无济于事。 不使用触发器实际上不是一个选项,因为需要同步。将其更改为物化视图似乎是一个好主意,但这些视图中不允许使用neede计算,而且非物化视图的速度太慢,这就是为什么我要将其从非物化视图更改为表。 将所有关于更改内容的信息以何种方式传递给过程是可能的,但这会使过程变得非常复杂,因此我避免编写此代码

有没有办法根据四个表中的更改直接触发的新值导出我的表

问候 拉明