Oracle

觸發器是否“看到”在它被觸發的事務中所做的所有更改?

  • October 7, 2014

讓我詳細說明一下標題。

假設我們有兩個表,t1並且t2t2有一個觸發器t2_trg。相同的事務在 中插入/更新數據t1,然後在 中插入/更新t2t2_trg被解僱並開始做它的事情。這個觸發器能看到所有的變化t1嗎?

Ps 我找到了關於這個問題的其他主題,但它們主要是針對 SQL Server 的。

正常觸發器將看到在同一事務中的其他表中所做的更改。但是,如果您使用 創建觸發器(或其他可程式對象)PRAGMA AUTONOMOUS_TRANSACTION,它將在新事務的範圍內執行,並且無法看到“父”事務更改。

引用自:https://dba.stackexchange.com/questions/78586