Create Table:
CREATE TABLE tableName ( ID NUMBER(19), document XMLType ) XMLTYPE COLUMN DOCUMENT STORE AS CLOB
Register Schema:
declare xmlschema CLOB := '<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> ... </xs:schema>'; begin DBMS_XMLSCHEMA.registerSchema( SCHEMAURL => 'SCHEMANAME', SCHEMADOC => xmlschema, LOCAL => TRUE, -- local GENTYPES => FALSE, -- generate object types GENBEAN => FALSE, -- no java beans GENTABLES => FALSE, -- generate object tables FORCE => FALSE ); end;
Create Table:
CREATE TABLE tableName ( ID NUMBER(19), document XMLType ) XMLTYPE COLUMN DOCUMENT STORE AS CLOB XMLSCHEMA SCHEMANAME ELEMENT "rootNodeName"
Register Schema:
declare xmlschema CLOB := '<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> ... </xs:schema>'; begin DBMS_XMLSCHEMA.registerSchema( SCHEMAURL => 'SCHEMANAME', SCHEMADOC => xmlschema, LOCAL => TRUE, -- local GENTYPES => TRUE, -- generate object types GENBEAN => FALSE, -- no java beans GENTABLES => TRUE, -- generate object tables FORCE => FALSE, OPTIONS => DBMS_XMLSCHEMA.REGISTER_AUTO_OOL ); end;
Create Table:
CREATE TABLE tableName ( ID NUMBER(19), document XMLType ) XMLTYPE COLUMN DOCUMENT STORE AS OBJECT RELATIONAL XMLSCHEMA SCHEMANAME ELEMENT "rootNodeName"
Create Table:
CREATE TABLE tableName ( ID NUMBER(19), document XMLType ) XMLTYPE COLUMN "DOCUMENT" STORE as BINARY XML
Register Schema:
declare xmlschema CLOB := '<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> ... </xs:schema>'; begin DBMS_XMLSCHEMA.registerSchema( SCHEMAURL => 'SCHEMANAME', SCHEMADOC => xmlschema, LOCAL => TRUE, -- local GENTYPES => FALSE, -- generate object types GENBEAN => FALSE, -- no java beans GENTABLES => FALSE, -- generate object tables FORCE => FALSE, OPTIONS => DBMS_XMLSCHEMA.REGISTER_BINARYXML ); end;
Create Table:
CREATE TABLE tableName ( ID NUMBER(19), document XMLType ) XMLTYPE COLUMN "DOCUMENT" STORE as BINARY XML ALLOW ANYSCHEMA
Register Schema:
declare xmlschema CLOB := '<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> ... </xs:schema>'; begin DBMS_XMLSCHEMA.registerSchema( SCHEMAURL => 'SCHEMANAME', SCHEMADOC => xmlschema, LOCAL => TRUE, -- local GENTYPES => FALSE, -- generate object types GENBEAN => FALSE, -- no java beans GENTABLES => FALSE, -- generate object tables FORCE => FALSE, OPTIONS => DBMS_XMLSCHEMA.REGISTER_BINARYXML ); end;
Create Table:
CREATE TABLE tableName ( ID NUMBER(19), document XMLType ) XMLTYPE COLUMN "DOCUMENT" STORE as BINARY XML XMLSCHEMA SCHEMANAME ELEMENT "rootNodeName"
SELECT
extractValue(
DOCUMENT
,
'./doc/ROOT/var[@name="PostalCode"]/subnode/value/text()'
)
FROM
tableName
WHERE
rownum < 1000
SELECT XMLQuery( 'count(.//*)' PASSING BY VALUE p.DOCUMENT RETURNING CONTENT ) FROM TABLE_NAME p
SELECT
tableName.ID
,
o.varname
,
p.pvalue
FROM
tableName
,
XMLTable(
'./doc/ROOT/var'
PASSING DOCUMENT
COLUMNS
varname varchar2(20) PATH '@name',
var XMLType PATH './subnode'
) as o
,
XMLTable('./subnode/value'
PASSING o.var
COLUMNS
pvalue varchar2(4) PATH './text()'
) as p
WHERE
o.varname = 'PostalCode'
and
p.pvalue < 1160
CREATE INDEX indexName ON tableName extractValue( DOCUMENT , './doc/ROOT/var[@name="PostalCode"]/subnode/value/text()' );
CREATE INDEX
po_xmlindex_ix
ON
po_clob (OBJECT_VALUE)
INDEXTYPE IS XDB.XMLINDEX
PARAMETERS (
'PATHS (INCLUDE (
/PurchaseOrder/LineItems//*
/PurchaseOrder/Reference
))'
);