SELECT
u.username owner
, t.name table_name
, decode (t.type#, 2, 'TABLE', 'VIEW') table_type
FROM
dba_users u
, sys.obj$ t
WHERE u.user_id = t.owner#
AND t.type# IN (2,4)
AND ( t.owner# = UID
OR t.obj# IN
(SELECT obj# FROM sys.objauth$
WHERE ( grantee# = UID
OR grantee# IN
(SELECT privilege#
FROM sys.sysauth$
WHERE privilege# > 0
START WITH grantee# = UID
CONNECT BY PRIOR privilege# = grantee#)))
OR EXISTS /* SELECT ANY TABLE */
(SELECT null FROM v$enabledprivs
WHERE priv_number = -47))
WITH READ ONLY
SELECT
U.USERNAME OWNER
, T.NAME TABLE_NAME
, DECODE (T.TYPE#
, 2
, 'TABLE'
, 'VIEW') TABLE_TYPE
FROM
DBA_USERS U
, SYS.OBJ$ T
WHERE U.USER_ID = T.OWNER#
AND T.TYPE# IN (2
, 4)
AND ( T.OWNER# = UID
OR T.OBJ# IN
(SELECT OBJ#
FROM SYS.OBJAUTH$
WHERE ( GRANTEE# = UID
OR GRANTEE# IN
(SELECT PRIVILEGE#
FROM SYS.SYSAUTH$
WHERE PRIVILEGE# > 0
START WITH GRANTEE# = UID
CONNECT BY PRIOR PRIVILEGE# = GRANTEE#)))
OR EXISTS /* SELECT ANY TABLE */
(SELECT NULL
FROM V$ENABLEDPRIVS
WHERE PRIV_NUMBER = -47))
WITH READ ONLY
|
|
|