一、摘要
当遇到编译Package无法通过时,需要进行查询那个session在同时编译或者使用该package,可通过如下方式查询
二、通过V$ACCESS视图
通过表v$access就能够查看到使用到的表,存储过程以及cursor
查找用户正在访问的对象 一旦发现某些用户或者系统中的查询存在问题, 查询 V$ACCESS 可以为您指出有潜在问题的对
三、通过DBA_DDL_LOCKS
可以通过以下视图进行查询
四、通过一段复杂SQL
可以通过以下视图进行查询
SELECT DECODE (lob.kglobtyp,
0, 'NEXT OBJECT',
1, 'INDEX',
2, 'TABLE',
3, 'CLUSTER',
4, 'VIEW',
5, 'SYNONYM',
6, 'SEQUENCE',
7, 'PROCEDURE',
8, 'FUNCTION',
9, 'PACKAGE',
11, 'PACKAGE BODY',
12, 'TRIGGER',
13, 'TYPE',
14, 'TYPE BODY',
19, 'TABLE PARTITION',
20, 'INDEX PARTITION',
21, 'LOB',
22, 'LIBRARY',
23, 'DIRECTORY',
24, 'QUEUE',
28, 'JAVA SOURCE',
29, 'JAVA CLASS',
30, 'JAVA RESOURCE',
32, 'INDEXTYPE',
33, 'OPERATOR',
34, 'TABLE SUBPARTITION',
35, 'INDEX SUBPARTITION',
40, 'LOB PARTITION',
41, 'LOB SUBPARTITION',
42, 'MATERIALIZED VIEW',
43, 'DIMENSION',
44, 'CONTEXT',
46, 'RULE SET',
47, 'RESOURCE PLAN',
48, 'CONSUMER GROUP',
51, 'SUBSCRIPTION',
52, 'LOCATION',
55, 'XML SCHEMA',
56, 'JAVA DATA',
57, 'SECURITY PROFILE',
59, 'RULE',
62, 'EVALUATION CONTEXT',
'UNDEFINED')
object_type,
lob.kglnaobj object_name,
pn.kglpnmod lock_mode_held,
pn.kglpnreq lock_mode_requested,
ses.sid,
ses.serial#,
ses.username
FROM x$kglpn pn,
v$session ses,
x$kglob lob,
v$session_wait vsw
WHERE pn.kglpnuse = ses.saddr
and pn.kglpnhdl = lob.kglhdadr
and lob.kglhdadr = vsw.p1raw
ORDER BY lock_mode_held DESCThanks and Regards
2015-05-06 Created By BaoXinjian
ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建