6

こんにちは。Oracle を入手するにはどうすればよいですか。実行中のプロシージャを確認できますか?

4

1 に答える 1

25

必要に応じて、これで十分な場合があります (ただし、v$session および dba_objects へのアクセスに依存します)。

select 'CALLED PLSQL', vs.username, d_o.object_name -- whatever info you need
  from dba_objects d_o
       inner join
       v$session vs
          on d_o.object_id = vs.plsql_entry_object_id
union all
select 'CURRENT PLSQL', vs.username, d_o.object_name
  from dba_objects d_o
       inner join
       v$session vs
          on d_o.object_id = vs.plsql_object_id

ドキュメントに従って:

PLSQL_ENTRY_OBJECT_ID - スタックの最上位の PL/SQL サブプログラムの ID。スタックにPL/SQLサブプログラムがない場合はNULL

PLSQL_OBJECT_ID - 現在実行中の PL/SQL サブプログラムのオブジェクト ID。SQL を実行する場合は NULL

于 2013-08-02T20:03:08.797 に答える