select un.name, decode(un.user#,1,'PUBLIC','SYS'),
ts.name, un.us#, f.file#, un.block#,
s.iniexts * ts.blocksize, s.extsize * ts.blocksize,
s.minexts, s.maxexts,
decode(bitand(ts.flags, 3), 1, to_number(NULL),
s.extpct),
decode(un.status$, 2, 'OFFLINE', 3, 'ONLINE',
4, 'UNDEFINED', 5, 'NEEDS RECOVERY',
6, 'PARTLY AVAILABLE', 'UNDEFINED'),
decode(un.inst#, 0, NULL, un.inst#), un.file#
from sys.undo$ un, sys.seg$ s, sys.ts$ ts, sys.file$ f
where un.status$ != 1
and un.ts# = s.ts#
and un.file# = s.file#
and un.block# = s.block#
and s.type# in (1, 10)
and s.ts# = ts.ts#
and un.ts# = f.ts#
and un.file# = f.relfile#
SELECT UN.NAME
, DECODE(UN.USER#
, 1
, 'PUBLIC'
, 'SYS')
,
TS.NAME
, UN.US#
, F.FILE#
, UN.BLOCK#
,
S.INIEXTS * TS.BLOCKSIZE
, S.EXTSIZE * TS.BLOCKSIZE
,
S.MINEXTS
, S.MAXEXTS
,
DECODE(BITAND(TS.FLAGS
, 3)
, 1
, TO_NUMBER(NULL)
,
S.EXTPCT)
,
DECODE(UN.STATUS$
, 2
, 'OFFLINE'
, 3
, 'ONLINE'
,
4
, 'UNDEFINED'
, 5
, 'NEEDS RECOVERY'
,
6
, 'PARTLY AVAILABLE'
, 'UNDEFINED')
,
DECODE(UN.INST#
, 0
, NULL
, UN.INST#)
, UN.FILE#
FROM SYS.UNDO$ UN
, SYS.SEG$ S
, SYS.TS$ TS
, SYS.FILE$ F
WHERE UN.STATUS$ != 1
AND UN.TS# = S.TS#
AND UN.FILE# = S.FILE#
AND UN.BLOCK# = S.BLOCK#
AND S.TYPE# IN (1
, 10)
AND S.TS# = TS.TS#
AND UN.TS# = F.TS#
AND UN.FILE# = F.RELFILE#
|
|
|