oracle怎样查看正在执行的存储过程

我请教下,oracle怎样查看正在执行的存储过程
最新回答
它的糖诗

2024-10-30 09:25:55

1、在存储过程中加一个输出参数,执行完存储过程后,判断输出参数的值;

2、查看存储过程中处理数据后,你要的效果达到没有。

甲骨文股份有限公司(Oracle)是全球大型数据库软件公司,总部位于美国加州红木城的红木岸。在2008年,甲骨文股份有限公司是继Microsoft及IBM后,全球收入第三多的软件公司。Oracle数据库产品为财富排行榜上的前1000家公司所采用,许多大型网站也选用了Oracle系统。

甲骨文股份有限公司于1989年正式进入中国,在北京、上海、广州和成都均设立了分支机构。 2016年1月,甲骨文表示会收购网站数据追踪服务商AddThis。2016年2月,甲骨文收购了云计算创业公司Ravello Systems。2017年6月7日发布的2017年美国《财富》500强,甲骨文公司排名第81位。2017年6月,《2017年BrandZ最具价值全球品牌100强》公布,甲骨文公司排名第46位。

微凉°

2024-10-30 09:58:49

1.确定正在运行的过程名
select name,locks,pins
from v$db_object_cache
where locks > 0 and pins > 0 and type='PROCEDURE';
NAME LOCKS PINS
P_ETL_CRM_DESK 1 1

2.查询v$open_cursor 视图
select sid,sql_text
from v$open_cursor
where UPPER(sql_text) like '%P_ETL_CRM_DESK%'
SID SQL_TEXT
143 begin -- Call the procedure p_etl_crm_desk(v_dtdate => :

3.也可以用v$access确定
select * from v$access where object='P_ETL_CRM_DESK';
SID OWNER OBJECT TYPE
143 KDCC P_ETL_CRM_DESK PROCEDURE

4.或者dba_ddl_locks
select session_id sid, owner, name, type,mode_held held, mode_requested request
from dba_ddl_locks
where name = 'P_ETL_CRM_DESK';
SID OWNER NAME TYPE HELD REQUEST
143 KDCC P_ETL_CRM_DESK Table/Procedure/Type Null None