[Home] [Help]
select d."OWNER",d."DIMENSION_NAME",d."HIERARCHY_NAME",d."POSITION",d."CHILD_LEVEL_NAME",d."JOIN_KEY_ID",d."PARENT_LEVEL_NAME" from dba_dim_child_of d, sys.obj$ o, sys.user$ u
where o.owner# = u.user#
and d.dimension_name = o.name
and d.owner = u.name
and o.type# = 43 /* dimension */
and (o.owner# = userenv('SCHEMAID')
or o.obj# in
(select oa.obj#
from sys.objauth$ oa
where grantee# in ( select kzsrorol
from x$kzsro
)
)
or /* user has system privileges */
exists (select null from v$enabledprivs
where priv_number in (-215 /* CREATE ANY DIMENSION */,
-216 /* ALTER ANY DIMENSION */,
-217 /* DROP ANY DIMENSION */)
)
)
SELECT D."OWNER"
, D."DIMENSION_NAME"
, D."HIERARCHY_NAME"
, D."POSITION"
, D."CHILD_LEVEL_NAME"
, D."JOIN_KEY_ID"
, D."PARENT_LEVEL_NAME"
FROM DBA_DIM_CHILD_OF D
, SYS.OBJ$ O
, SYS.USER$ U
WHERE O.OWNER# = U.USER#
AND D.DIMENSION_NAME = O.NAME
AND D.OWNER = U.NAME
AND O.TYPE# = 43 /* DIMENSION */
AND (O.OWNER# = USERENV('SCHEMAID')
OR O.OBJ# IN
(SELECT OA.OBJ#
FROM SYS.OBJAUTH$ OA
WHERE GRANTEE# IN ( SELECT KZSROROL
FROM X$KZSRO
)
)
OR /* USER HAS SYSTEM PRIVILEGES */
EXISTS (SELECT NULL
FROM V$ENABLEDPRIVS
WHERE PRIV_NUMBER IN (-215 /* CREATE ANY DIMENSION */
,
-216 /* ALTER ANY DIMENSION */
,
-217 /* DROP ANY DIMENSION */)
)
)
|
|
|
|