select '1',
(select dbms_metadata_util.get_strm_minver from dual),
(select dbms_metadata_util.get_vers_dpapi from dual),
(select dbms_metadata_util.get_endianness from dual),
(select value from v$nls_parameters
where parameter='NLS_CHARACTERSET'),
(select value from v$nls_parameters
where parameter='NLS_NCHAR_CHARACTERSET'),
(select dbtimezone from dual),
(select utl_xml.getfdo from dual),
t.obj#,
o.owner_name, o.name, o.subname,
bitand(t.property, 4294967295),
trunc(t.property / power(2, 32)),
cast( multiset(select * from ku$_strmcol_view c
where c.obj_num = t.obj#
and bitand(c.property,32768)=0 -- unused column
and bitand(c.property2,512)=0 -- ILM column
/* exclude guard columns */
and bitand(c.property2,128)=0
/* exclude storage columns for xmltype */
and sys.dbms_metadata_util.isXml(t.obj#,c.intcol_num)=0
/* prior to v12, exclude xmltype heirarchy enabled
table columns (XMLTYPE, and hidden columns)
named 'ACLOID' or 'OWNERID'. These have instance
specific content. In V12, full export can map the
content, so the columns are dealt with on import. */
and not
((exists (select q.obj# from sys.opqtype$ q
where q.obj#=t.obj#
and q.type=1)) and /* xmltype col */
(bitand(c.property,32)!=0) and
(c.name IN ('OWNERID', 'ACLOID')) and
dbms_metadata.get_version < '12.00.00.00.00')
order by c.col_sortkey
) as ku$_strmcol_list_t
)
from ku$_schemaobj_view o, tab$ t
where t.obj# = o.obj_num
AND (SYS_CONTEXT('USERENV','CURRENT_USERID') IN (o.owner_num, 0) OR
EXISTS ( SELECT * FROM sys.session_roles
WHERE role='SELECT_CATALOG_ROLE' ))
SELECT '1'
,
(SELECT DBMS_METADATA_UTIL.GET_STRM_MINVER
FROM DUAL)
,
(SELECT DBMS_METADATA_UTIL.GET_VERS_DPAPI
FROM DUAL)
,
(SELECT DBMS_METADATA_UTIL.GET_ENDIANNESS
FROM DUAL)
,
(SELECT VALUE
FROM V$NLS_PARAMETERS
WHERE PARAMETER='NLS_CHARACTERSET')
,
(SELECT VALUE
FROM V$NLS_PARAMETERS
WHERE PARAMETER='NLS_NCHAR_CHARACTERSET')
,
(SELECT DBTIMEZONE
FROM DUAL)
,
(SELECT UTL_XML.GETFDO
FROM DUAL)
,
T.OBJ#
,
O.OWNER_NAME
, O.NAME
, O.SUBNAME
,
BITAND(T.PROPERTY
, 4294967295)
,
TRUNC(T.PROPERTY / POWER(2
, 32))
,
CAST( MULTISET(SELECT *
FROM KU$_STRMCOL_VIEW C
WHERE C.OBJ_NUM = T.OBJ#
AND BITAND(C.PROPERTY
, 32768)=0 -- UNUSED COLUMN
AND BITAND(C.PROPERTY2
, 512)=0 -- ILM COLUMN
/* EXCLUDE GUARD COLUMNS */
AND BITAND(C.PROPERTY2
, 128)=0
/* EXCLUDE STORAGE COLUMNS FOR XMLTYPE */
AND SYS.DBMS_METADATA_UTIL.ISXML(T.OBJ#
, C.INTCOL_NUM)=0
/* PRIOR TO V12
, EXCLUDE XMLTYPE HEIRARCHY ENABLED
TABLE COLUMNS (XMLTYPE
,
AND HIDDEN COLUMNS)
NAMED 'ACLOID' OR 'OWNERID'. THESE HAVE INSTANCE
SPECIFIC CONTENT. IN V12
, FULL EXPORT CAN MAP THE
CONTENT
, SO THE COLUMNS ARE DEALT WITH ON IMPORT. */
AND NOT
((EXISTS (SELECT Q.OBJ#
FROM SYS.OPQTYPE$ Q
WHERE Q.OBJ#=T.OBJ#
AND Q.TYPE=1))
AND /* XMLTYPE COL */
(BITAND(C.PROPERTY
, 32)!=0) AND
(C.NAME IN ('OWNERID'
, 'ACLOID')) AND
DBMS_METADATA.GET_VERSION < '12.00.00.00.00')
ORDER BY C.COL_SORTKEY
) AS KU$_STRMCOL_LIST_T
)
FROM KU$_SCHEMAOBJ_VIEW O
, TAB$ T
WHERE T.OBJ# = O.OBJ_NUM
AND (SYS_CONTEXT('USERENV'
, 'CURRENT_USERID') IN (O.OWNER_NUM
, 0) OR
EXISTS ( SELECT *
FROM SYS.SESSION_ROLES
WHERE ROLE='SELECT_CATALOG_ROLE' ))
|
|
|