SELECT DISTINCT '(' || s.sid || ') - ' || username AS "(session) - username"
FROM V$SESSION s, sys.x$kglob o, sys.x$kglpn p
WHERE upper(o.kglnaobj) LIKE upper('%你的存储过程名字%')
AND p.kglpnhdl = o.kglhdadr
AND s.SADDR = p.kglpnuse;
select p.KGLPNMOD
from x$kglob o, x$kglpn p
where o.kglhdadr = p.kglpnhdl
and upper(o.kglnaobj) like upper('%p_insert_tbl%');
----- 2
--------------------------------------------------------------------------------------------------------------------
不过我十分肯定地说,p_insert_tbl这个存储过程肯定没有在运行中,因为,我是在自己笔记本上的虚拟机上做测试,我只是启动了数据库而已,绝对没有运行这个存储过程!!!作者: ILoveMK 时间: 2009-09-03 11:28
提示: 作者被禁止或删除 内容自动屏蔽作者: TOADLover 时间: 2009-09-03 11:32 标题: 回复 #20 ILoveMK 的帖子 截图:
我是以sys用户执行你给出的sql语句的(19楼也是以sys用户),p_insert_tbl存储过程是由a_user创建的,不过没有job之类的东西,这个存储过程现在肯定不在运行状态。
-----------
select p.KGLPNMOD,o.kglhdnsp
from x$kglob o, x$kglpn p
where o.kglhdadr = p.kglpnhdl
and upper(o.kglnaobj) like upper('%p_insert_tbl%');
------------
所以可以说:
在同样情况下运行下面这条,把结果贴出来
------------
是保证在“同样的情况下”的!
++++++++++++++++++++++++++++++++++++++++++++++++++++++
这个应该可以,我试试之后,把结果贴出来作者: liangfeilongzso 时间: 2009-11-12 09:45
select sid,v$session.username 用户名,last_call_et 持续时间,status 状态,LOCKWAIT 等待锁,machine 用户电脑名,logon_time 开始登入时间,sql_text from v$session ,v$process ,v$sqlarea
where paddr=addr and sql_hash_value=hash_value
and v$session.username is not null
order by last_call_et desc