ORA-19007 when coping a table with an xml type in it to a new schema in the
499907Feb 13 2009 — edited Feb 15 2009ORA-19007 when coping a table with an xml type in it to a new schema in the same database.
Hi all,
When I copy a table with an xml type in it to a new schema in the same database I get an ora-19009.
The setup is as follows I have a schema a with table TABLE_WITH_XMLTYPE where data is:
CREATE
TABLE TABLE_WITH_XMLTYPE
(
FOLDER_ID NUMBER (10, 0) NOT NULL,
SEARCH_PROPERTIES XMLTYPE ,
CONSTRAINT TABLE_WITH_XMLTYPE PK PRIMARY KEY (FOLDERID) USING INDEX
)
XMLTYPE COLUMN SEARCH_PROPERTIES XMLSCHEMA
"http://xxxxxxx.net/FolderProperties.xsd" element "FolderProperties"
VARRAY SEARCH_PROPERTIES."XMLDATA"."PROPERTIES"."PROPERTY" STORE AS TABLE
PROPERTY_TABLE
(
(PRIMARY KEY (NESTED_TABLE_ID, ARRAY_INDEX)) ORGANIZATION INDEX OVERFLOW
);
Both schemas have the following xml schema registered as a local xml schema
BEGIN
DBMS_XMLSCHEMA.registerSchema(
SCHEMAURL => 'http://xxxxxxx.net/FolderProperties.xsd',
SCHEMADOC =>
'<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xdb="http://xmlns.oracle.com/xdb"
xdb:storeVarrayAsTable="true">
<xs:element name="FolderProperties"
type="FolderPropertiesType"
xdb:defaultTable="FOLDER_SEARCH_PROPERTIES" />
<xs:complexType name="FolderPropertiesType" xdb:SQLType="FOLDERPROPERTIES_T">
<xs:sequence>
<xs:element name="FolderID" type="FolderIDType" minOccurs="1" xdb:SQLName="FOLDER_ID"/>
<xs:element name="Properties" type="PropertiesType" xdb:SQLName="PROPERTIES"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="PropertiesType" xdb:SQLType="PROPERTIES_T">
<xs:sequence>
<xs:element name="Property" type="PropertyType" maxOccurs="unbounded"
xdb:SQLName="PROPERTY" xdb:SQLCollType="PROPERTY_V"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="PropertyType" xdb:SQLType="PROPERTY_T">
<xs:sequence>
<xs:element name="DateValue" type="DateType" xdb:SQLName="DATE_VALUE"/>
<xs:element name="NumValue" type="NumType" xdb:SQLName="NUM_VALUE"/>
<xs:element name="StringValue" type="StringType" xdb:SQLName="STRING_VALUE"/>
</xs:sequence>
<xs:attribute name="Name" xdb:SQLName="NAME" xdb:SQLType="VARCHAR2">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="255"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:simpleType name="FolderIDType">
<xs:restriction base="xs:integer"/>
</xs:simpleType>
<xs:simpleType name="DateType">
<xs:restriction base="xs:dateTime"/>
</xs:simpleType>
<xs:simpleType name="NumType">
<xs:restriction base="xs:decimal"/>
</xs:simpleType>
<xs:simpleType name="StringType">
<xs:restriction base="xs:string" />
</xs:simpleType>
</xs:schema>',
LOCAL => TRUE,
GENTYPES => TRUE,
GENTABLES => FALSE);
END;
/
when I try to do the following insert:
insert into schemaB.TABLE_WITH_XMLTYPE ( FOLDER_ID, SEARCH_PROPERTIES)
select FOLDER_ID, SEARCH_PROPERTIES from schemaB.TABLE_WITH_XMLTYPE;
I’ll get an ora-19007.
Can some one point me in the right direction how to solve this error.
Thanks Roelof.