私はいくつかのカスタマイズを行う必要がある Web ベースのアプリケーションで作業しています。しかし、Java ソース コードや JSP にさえアクセスできません。データベースにしかアクセスできません。
最後に実行されたクエリを見つける方法はありますか。
テーブルには多くのトリガーがあります(フロントエンドから何かを実行するとトリガーが起動します)。どのクエリがトリガーを起動させているかを知りたいです。それらを見つける方法はありますか。トリガーまたは他のオラクルのビューまたはテーブル内。
トリガーで以下の例を使用して、実行されたステートメントを見つけることができます
create or replace TRIGGER tbuTAR_TSM
BEFORE UPDATE ON TAR_TSM
FOR EACH ROW
declare
v_test varchar2(10000);
cursor c1 is
select ltrim(sq.sql_text)
into v_test
from v$sql sq, v$session se, v$open_cursor oc
where sq.sql_id = oc.sql_id
and se.saddr = oc.saddr
and se.sid = oc.sid
and se.audsid = SYS_CONTEXT('userenv', 'sessionid')
order by oc.LAST_SQL_ACTIVE_TIME desc;
begin
open c1;
loop
fetch c1
into v_test;
exit when c1%notfound;
if substr(upper(v_test), 1, 6) = 'UPDATE' then
if instr(upper(v_test), 'TAR_TSM') != 0 then
dbms_output.put_line(v_test);
exit;
end if;
end if;
end loop;
close c1;
end;