【发布时间】:2017-07-20 02:31:22
【问题描述】:
我试图获取触发我的触发器的语句,但我发现了任何东西.... oracle 8i 中有一个提示,但现在不起作用。
我使用的是 Oracle 10 和 11g。
我尝试使用 BEFORE 或 AFTER 触发器,并在 v$session 中使用 SQL_ID 或 PREV_SQL_ID 进行此查询:
select substr(e.program,1,20),sql_text into l_program, sql_text
from v$sql s, v$session e
where s.sql_id = e.sql_id
and e.status = 'ACTIVE'
and e.sid = sys_context('USERENV','SID')
and rownum = 1;
要么我得到当前语句(在 v$session 中),要么是我的更新查询之前触发触发器的语句......
我也尝试过复合触发器,但是一样...因为我想,如果我尝试在语句之前或之后获取语句,它将起作用...没有...。
有人有想法吗?我不相信没有解决方案...
【问题讨论】:
标签: sql oracle oracle11g triggers