select u.name, o.name, m.name, m.method#,
p.name, p.parameter#,
decode(bitand(p.properties, 768), 768, 'IN OUT',
decode(bitand(p.properties, 256), 256, 'IN',
decode(bitand(p.properties, 512), 512, 'OUT'))),
decode(bitand(p.properties, 32768), 32768, 'REF',
decode(bitand(p.properties, 16384), 16384, 'POINTER')),
decode(bitand(pt.properties, 64), 64, null, pu.name),
decode(pt.typecode,
9, decode(p.charsetform, 2, 'NVARCHAR2', po.name),
96, decode(p.charsetform, 2, 'NCHAR', po.name),
112, decode(p.charsetform, 2, 'NCLOB', po.name),
po.name),
decode(p.charsetform, 1, 'CHAR_CS',
2, 'NCHAR_CS',
3, NLS_CHARSET_NAME(p.charsetid),
4, 'ARG:'||p.charsetid)
from sys.user$ u, sys."_CURRENT_EDITION_OBJ" o, sys.method$ m, sys.parameter$ p,
sys."_CURRENT_EDITION_OBJ" po, sys.user$ pu, sys.type$ pt
where o.owner# = u.user#
and o.type# <> 10 -- must not be invalid
and o.oid$ = m.toid
and o.subname IS NULL -- get the latest version only
and m.toid = p.toid
and m.version# = p.version#
and m.method# = p.method#
and p.param_toid = po.oid$
and po.owner# = pu.user#
and p.param_toid = pt.toid
and p.param_version# = pt.version#
SELECT U.NAME
, O.NAME
, M.NAME
, M.METHOD#
,
P.NAME
, P.PARAMETER#
,
DECODE(BITAND(P.PROPERTIES
, 768)
, 768
, 'IN OUT'
,
DECODE(BITAND(P.PROPERTIES
, 256)
, 256
, 'IN'
,
DECODE(BITAND(P.PROPERTIES
, 512)
, 512
, 'OUT')))
,
DECODE(BITAND(P.PROPERTIES
, 32768)
, 32768
, 'REF'
,
DECODE(BITAND(P.PROPERTIES
, 16384)
, 16384
, 'POINTER'))
,
DECODE(BITAND(PT.PROPERTIES
, 64)
, 64
, NULL
, PU.NAME)
,
DECODE(PT.TYPECODE
,
9
, DECODE(P.CHARSETFORM
, 2
, 'NVARCHAR2'
, PO.NAME)
,
96
, DECODE(P.CHARSETFORM
, 2
, 'NCHAR'
, PO.NAME)
,
112
, DECODE(P.CHARSETFORM
, 2
, 'NCLOB'
, PO.NAME)
,
PO.NAME)
,
DECODE(P.CHARSETFORM
, 1
, 'CHAR_CS'
,
2
, 'NCHAR_CS'
,
3
, NLS_CHARSET_NAME(P.CHARSETID)
,
4
, 'ARG:'||P.CHARSETID)
FROM SYS.USER$ U
, SYS."_CURRENT_EDITION_OBJ" O
, SYS.METHOD$ M
, SYS.PARAMETER$ P
,
SYS."_CURRENT_EDITION_OBJ" PO
, SYS.USER$ PU
, SYS.TYPE$ PT
WHERE O.OWNER# = U.USER#
AND O.TYPE# <> 10 -- MUST NOT BE INVALID
AND O.OID$ = M.TOID
AND O.SUBNAME IS NULL -- GET THE LATEST VERSION ONLY
AND M.TOID = P.TOID
AND M.VERSION# = P.VERSION#
AND M.METHOD# = P.METHOD#
AND P.PARAM_TOID = PO.OID$
AND PO.OWNER# = PU.USER#
AND P.PARAM_TOID = PT.TOID
AND P.PARAM_VERSION# = PT.VERSION#
|
|
|