请问怎么样查那些function procedure正在执行?

解决方案 »

  1.   

    建议对每个function或procedure建立一个日志表,包含一个字段--是否正在执行,取值为0或1,并修改存储过程,进入存储过程时将对应的日志表的是否正在执行字段改为1,出来前改为0,注意修改后立刻增加一个commit,否则会有锁等待。
      

  2.   

    请问如何让正在执行的 function procedure停止了(有选择性的停),不能停数据库?
      

  3.   

    目前看来只能杀死会话了,不知还有没有更多的方法.
    到v$session找对应当前的session的sid,serial#,如sid为101,serial#为10234则执行
    alter system kill session '101,10234';
      

  4.   

    可以通过dba_ddl_lock表和object表来看正在执行的function有哪些。通过session好来杀掉正在执行的session。
      

  5.   

    谢谢楼上,应该是表dba_ddl_locks