Update XMLType column via VIEW raise ORA-01733 :(
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
I have table "DOCUMENTS" with XML_Info XMLType column.
I created view "DOCUMENTS2" as select * from "DOCUMENTS",
after, if I
update "DOCUMENTS" set XML_Info = XMLType(blah....) -> then all ok, but if I
update "DOCUMENTS2" set XML_Info = XMLType(blah...) -> Then I got ORA-01733 :(
Whassup, folks? ;)
P.S. Sorry for grammar.
P.S.S PL/SQL in Oracle Forms 6i do not know anything about sys.xmltype :(
I want to basically copy the data from my local instance to the remote instanceone workaround would be converting xmltype to clob with getClobVal() and then splitting (dbms_lob.substr() ) this clob into smaller chunks and inserting those chunks into some remote table and then in the remote database you join these chunks back together.
Ants
Similar Messages
-
Ora-21700 when updating xmltype column of a table
Hello,
Can somebody explain why the following statement gives ora-21700 (object does not exist or is market for delete):
update translation_message
set translationxml = XmlType(
'<NPSREPLY DOMAIN="SWI" OBJECT="SUBSCRIBER" REQUEST="DELETE" RETURNCODE="0" RETURNTYPE="NONE" STATUS="STORED" xmlns="http://saly.bc/nps/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://saly.bc/nps/ NPS_Reply.xsd">
<SUBREQUEST SEQUENCE="1">
<ProfileData>
<ACTION SUBTYPE="PSTN">DEL_CNA_FREE</ACTION>
<DN>999999999</DN>
<RETURNCODE>0</RETURNCODE>
</ProfileData>
</SUBREQUEST>
</NPSREPLY>'
where id = 1926938
remark:
when changing
xsi:schemaLocation="http://saly.bc/nps/ NPS_Reply.xsd
in
xsi:schemaLocation="http://saly.bc/nps/NPS_Reply.xsd
the select is running well.
I will explain my problem a little bit more:
The exact oracle error is:
ora-21700 object does not exist or is marked for delete ORA-06512: at "SYS.XMLTYPE".
The following peace of xml causes the problem:
xsi:schemaLocation="http://saly.bc/nps/ NPS_Reply.xsd"
The statement is running fine if you remove the blank after
"/nps/ NPS_Repy". So if you use this peace of xml xsi:schemaLocation="http://saly.bc/nps/NPS_Reply.xsd", the statement works fine.
My question: Wy is the blank not allowed in this peace of xml xsi:schemaLocation="http://saly.bc/nps/ NPS_Reply.xsd"
The purpose of the blank is to indicate that 'NPS_Reply.xsd' will be located somewhere in "http://saly.bc/nps/". So it can be that 'NPS_Reply.xsd' is found directly under "http://saly.bc/nps/" or some levels lower. According XML standards, the blank is allowed for this purposes.
regards, ElsHi,
This schema location is only indicative and not used. The xml is generated by an other application and has to be stored in an xmltype column.
regards, Els -
ORA-01733- virtual column not allowed here - Insert using inline view
Does anyone know why I am getting ORA-01733- virtual column not allowed here
SQL> select * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
PL/SQL Release 11.1.0.6.0 - Production
CORE 11.1.0.6.0 Production
TNS for 32-bit Windows: Version 11.1.0.6.0 - Production
NLSRTL Version 11.1.0.6.0 - Production
---no error without WITH CHECK option
SQL> INSERT INTO
2 (SELECT
3 location_id,
4 city,
5 l.country_id
6 FROM countries c, locations l,regions r
7 where l.country_id = c.country_id
8 and r.region_id=c.region_id
9 and r.region_name = 'Asia')
10 VALUES (5500, 'Wansdworth Common', 'UK');
1 row created.
SQL> rollback;
Rollback complete.
-----error with WITH CHECK OPTION
SQL> INSERT INTO
2 (SELECT
3 location_id,
4 city,
5 l.country_id
6 FROM countries c, locations l,regions r
7 where l.country_id = c.country_id
8 and r.region_id=c.region_id
9 and r.region_name = 'Asia' WITH CHECK OPTION)
10 VALUES (5500, 'Wansdworth Common', 'UK');
INSERT INTO
ERROR at line 1:
ORA-01733: virtual column not allowed here
I was expecting
ORA-01402: view WITH CHECK OPTION where-clause violation
for the second one. Is there anything I am missing here ?Randolf
Thank you very much for the update to this old question
After reading the link I think I should ignore this error and accept it as ORA-01402
The information you asked me to check did not lead me an understanding of different error types.
SQL> ----view for ORA-01733
SQL> create view test_v_1
2 as
3 SELECT
4 location_id,
5 city,
6 l.country_id
7 FROM countries c, locations l,regions r
8 where l.country_id = c.country_id
9 and r.region_id=c.region_id
10 and r.region_name = 'Asia' WITH CHECK OPTION;
View created.
SQL>
SQL>
SQL>
SQL> select * from user_updatable_columns where table_name='TEST_V_1';
OWNER TABLE_NAME COLUMN_NAME UPD INS DEL
HR TEST_V_1 CITY YES YES YES
HR TEST_V_1 COUNTRY_ID NO NO NO
HR TEST_V_1 LOCATION_ID YES YES YES
SQL>
SQL> ----view for ORA-01402
SQL>
SQL> create view test_v_2
2 as
3 SELECT
4 d.department_id,
5 d.department_name,
6 d.location_id
7 FROM hr.departments d,hr.locations l
8 WHERE l.location_id=d.location_id
9 and d.location_id < 2000
10 WITH CHECK OPTION;
View created.
SQL>
SQL> select * from user_updatable_columns where table_name='TEST_V_2';
OWNER TABLE_NAME COLUMN_NAME UPD INS DEL
HR TEST_V_2 DEPARTMENT_ID YES YES YES
HR TEST_V_2 DEPARTMENT_NAME YES YES YES
HR TEST_V_2 LOCATION_ID NO NO NO
SQL>
SQL>
SQL> ----INSERT STILL FAILING WITH DIFFERENT ERROR DESPITE THE SAME UPDATABLE COLUMN STRUCTURE
SQL> insert into test_v_1 values (5500, 'Wansdworth Common', 'UK');
insert into test_v_1 values (5500, 'Wansdworth Common', 'UK')
ERROR at line 1:
ORA-01733: virtual column not allowed here
SQL> insert into test_v_2 values (9999, 'Entertainment', 2500);
insert into test_v_2 values (9999, 'Entertainment', 2500)
ERROR at line 1:
ORA-01402: view WITH CHECK OPTION where-clause violation
SQL>A. Coskan GUNDOGAR
Oracle DBA
http://coskan.wordpress.com
“A man's errors are his portals of discovery.”
James Joyce -
Updating the whole xml file in XMLType column
Hi ,
I am facing the problem in updating the XMLTYPE column.
I need to update the whole xml file
This is my table
SQL> desc EMPJAL_TABLE;
Name Null? Type
EMPLOYEEID NOT NULL VARCHAR2(140)
EMPCOM VARCHAR2(100)
EMPJAL SYS.XMLTYPE(XMLSchema "www.EMPSIM.com" Element "EMPJAL") STORAGE
Object-relational TYPE "EMPJAL_T"
I am able to form the CLOB object and trying to use this sql command
UPDATE EMPJAL_TABLE SET EMPJAL = XMLType( ? ) ) WHERE EMPLOYEEID ='emp1234';
Here I want to update the whole xmlfile in XMLTYPE column.
Error is - ORA-00933: SQL command not properly ended
Please advise
Thanks
GovindsHi Mark,
I apologise for this mistake. I am really putting lot of efforts and also worked/working in advance topics of XML DB.
Yes I am extensively using Oracle 10g r2 and suggesting others to use this
This time I had put more effort before posting ,I had a series of queries to resolve most of then were working , this was the one giving problem inside my java code
I am sorry for this .
Any how I made another query which works better.
Thanks
Govinda -
Can we update column in view with some operation
can we maipulate column of a view containing any arthimetic operation
if yes, pls explain me some example
aspSQL> create or replace view emp_view as select e.*, (sal + nvl(comm, 0)) total from scott.emp e ;
View created.
SQL> desc emp_view
Name Null? Type
EMPNO NOT NULL NUMBER(4)
ENAME VARCHAR2(10)
JOB VARCHAR2(9)
MGR NUMBER(4)
HIREDATE DATE
SAL NUMBER(7,2)
COMM NUMBER(7,2)
DEPTNO NUMBER(2)
TOTAL NUMBER
SQL> update emp_view set hiredate = hiredate + (1/24) ;
14 rows updated.
SQL> update emp_view set total = total * 1.5 ;
update emp_view set total = total * 1.5
ERROR at line 1:
ORA-01733: virtual column not allowed here
SQL> -
Update a database table column via EO
Hi,
I want to update a database table column via EO, but somehow the table column is not updated. Could you help if I miss anything?
Here is my code:
View SQL:
select
,GoalSheetHeaderEO.srp_goal_header_id
,XL.MEANING
,GoalSheetHeaderEO.status_code
,GoalSheetHeaderEO.start_date GS_START_DATE
,GoalSheetHeaderEO.end_date GS_END_DATE
,GoalSheetHeaderEO.PERIOD_YEAR
,GoalSheetHeaderEO.LAST_UPDATED_BY
,GoalSheetHeaderEO.LAST_UPDATE_DATE
,GoalSheetHeaderEO.LAST_UPDATE_LOGIN
,'N' CHECKED
from
xxg2c_srp_goal_headers_all GoalSheetHeaderEO
,cn_comp_plans_all comp
,jtf_rs_salesreps rs
,jtf_rs_resource_extns rse
,xxg2c_lookups xl
,shr_strct_nodes nod
,g2c_goal_shr_emp_assignments_v emp
CO:
if (pageContext.getParameter("Update") != null){
am.invokeMethod("updateGoalSheet");
AM:
public void deleteGoalSheet(){
OAViewObject vo = (OAViewObject)getGoalSheetResultGAVO1();
GoalSheetResultGAVORowImpl row = (GoalSheetResultGAVORowImpl) vo.first();
while (row != null)
if (selectFlag != null)
if (selectFlag .equals("Y"))
//row.setAttribute("GsStatusCode",Constants.GOAL_SHEET_STATUS_CODE_DEL);
row.setStatusCode(Constants.GOAL_SHEET_STATUS_CODE_DEL);
row = (GoalSheetResultGAVORowImpl) vo.next();
getTransaction().commit();
EO:
public void setStatusCode(String value) {
if (value.equals(Constants.GOAL_SHEET_STATUS_CODE_DEL)){
String currentStatus = getStatusCode();
if(!(currentStatus.equals(Constants.GOAL_SHEET_STATUS_CODE_INPROG)
||currentStatus.equals(Constants.GOAL_SHEET_STATUS_CODE_RDYAUD))){
throw new OAAttrValException(OAException.TYP_ENTITY_OBJECT,
getEntityDef().getFullName(),
getPrimaryKey(),
"StatusCode",
value,
"xxg2c goaling",
"DEBUG -- need message name"
setAttributeInternal(STATUSCODE, value);
thanks
LeiHi Vikram,
It is just a type error. The delete is a soft delete to change the status to 'DEL'.
And also the view object is hybrid view object.
Complete View Object SQL:
select
nod.node_id
,nod.version_id
,emp.status_name
,rs.SALESREP_ID
,rse.source_name
,rse.source_email SRP_EMAIL_ID
,rse.source_number SRP_EMPLOYEE_NUMBER
,comp.name
,GoalSheetHeaderEO.srp_goal_header_id
,XL.MEANING
,GoalSheetHeaderEO.status_code
,GoalSheetHeaderEO.start_date GS_START_DATE
,GoalSheetHeaderEO.end_date GS_END_DATE
,GoalSheetHeaderEO.PERIOD_YEAR
,GoalSheetHeaderEO.LAST_UPDATED_BY
,GoalSheetHeaderEO.LAST_UPDATE_DATE
,GoalSheetHeaderEO.LAST_UPDATE_LOGIN
,DECODE(GoalSheetHeaderEO.PERIOD_YEAR,(SELECT PERIOD_YEAR FROM GL_PERIODS WHERE PERIOD_SET_NAME = 'Fiscal Year' AND SYSDATE BETWEEN YEAR_START_DATE AND END_DATE),DECODE(GoalSheetHeaderEO.STATUS_CODE,'AUTH','copy_enabled','copy_disabled'),'copy_disabled') COPY_FLAG
,DECODE(GoalSheetHeaderEO.SRP_GOAL_HEADER_ID,null,'create_enabled',DECODE(GoalSheetHeaderEO.status_code,'AUTH','create_enabled','create_disabled')) CREATE_FLAG
,'N' CHECKED
from
xxg2c_srp_goal_headers_all GoalSheetHeaderEO
,cn_comp_plans_all comp
,jtf_rs_salesreps rs
,jtf_rs_resource_extns rse
,xxg2c_lookups xl
,shr_strct_nodes nod
,g2c_goal_shr_emp_assignments_v emp
public void updateGoalSheet(){
OAViewObject vo = (OAViewObject)getGoalSheetResultGAVO1();
GoalSheetResultGAVORowImpl row = (GoalSheetResultGAVORowImpl) vo.first();
while (row != null)
if (selectFlag != null)
if (selectFlag .equals("Y"))
//row.setAttribute("GsStatusCode",Constants.GOAL_SHEET_STATUS_CODE_DEL);
row.setStatusCode(Constants.GOAL_SHEET_STATUS_CODE_DEL);
row = (GoalSheetResultGAVORowImpl) vo.next();
getTransaction().commit();
thanks for the help.
Lei -
ORA-07445 in the alert log when inserting into table with XMLType column
I'm trying to insert an xml-document into a table with a schema-based XMLType column. When I try to insert a row (using plsql-developer) - oracle is busy for a few seconds and then the connection to oracle is lost.
Below you''ll find the following to recreate the problem:
a) contents from the alert log
b) create script for the table
c) the before-insert trigger
d) the xml-schema
e) code for registering the schema
f) the test program
g) platform information
Alert Log:
Fri Aug 17 00:44:11 2007
Errors in file /oracle/app/oracle/product/10.2.0/db_1/admin/dntspilot2/udump/dntspilot2_ora_13807.trc:
ORA-07445: exception encountered: core dump [SIGSEGV] [Address not mapped to object] [475177] [] [] []
Create script for the table:
CREATE TABLE "DNTSB"."SIGNATURETABLE"
( "XML_DOCUMENT" "SYS"."XMLTYPE" ,
"TS" TIMESTAMP (6) WITH TIME ZONE NOT NULL ENABLE
) XMLTYPE COLUMN "XML_DOCUMENT" XMLSCHEMA "http://www.sporfori.fo/schemas/www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd" ELEMENT "Object"
ROWDEPENDENCIES ;
Before-insert trigger:
create or replace trigger BIS_SIGNATURETABLE
before insert on signaturetable
for each row
declare
-- local variables here
l_sigtab_rec signaturetable%rowtype;
begin
if (:new.xml_document is not null) then
:new.xml_document.schemavalidate();
end if;
l_sigtab_rec.xml_document := :new.xml_document;
end BIS_SIGNATURETABLE2;
XML-Schema (xmldsig-core-schema.xsd):
=====================================================================================
<?xml version="1.0" encoding="utf-8"?>
<!-- Schema for XML Signatures
http://www.w3.org/2000/09/xmldsig#
$Revision: 1.1 $ on $Date: 2002/02/08 20:32:26 $ by $Author: reagle $
Copyright 2001 The Internet Society and W3C (Massachusetts Institute
of Technology, Institut National de Recherche en Informatique et en
Automatique, Keio University). All Rights Reserved.
http://www.w3.org/Consortium/Legal/
This document is governed by the W3C Software License [1] as described
in the FAQ [2].
[1] http://www.w3.org/Consortium/Legal/copyright-software-19980720
[2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xdb="http://xmlns.oracle.com/xdb"
targetNamespace="http://www.w3.org/2000/09/xmldsig#" version="0.1" elementFormDefault="qualified">
<!-- Basic Types Defined for Signatures -->
<xs:simpleType name="CryptoBinary">
<xs:restriction base="xs:base64Binary">
</xs:restriction>
</xs:simpleType>
<!-- Start Signature -->
<xs:element name="Signature" type="ds:SignatureType"/>
<xs:complexType name="SignatureType">
<xs:sequence>
<xs:element ref="ds:SignedInfo"/>
<xs:element ref="ds:SignatureValue"/>
<xs:element ref="ds:KeyInfo" minOccurs="0"/>
<xs:element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="SignatureValue" type="ds:SignatureValueType"/>
<xs:complexType name="SignatureValueType">
<xs:simpleContent>
<xs:extension base="xs:base64Binary">
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Start SignedInfo -->
<xs:element name="SignedInfo" type="ds:SignedInfoType"/>
<xs:complexType name="SignedInfoType">
<xs:sequence>
<xs:element ref="ds:CanonicalizationMethod"/>
<xs:element ref="ds:SignatureMethod"/>
<xs:element ref="ds:Reference" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/>
<xs:complexType name="CanonicalizationMethodType" mixed="true">
<xs:sequence>
<xs:any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
<!-- (0,unbounded) elements from (1,1) namespace -->
</xs:sequence>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
</xs:complexType>
<xs:element name="SignatureMethod" type="ds:SignatureMethodType"/>
<xs:complexType name="SignatureMethodType" mixed="true">
<xs:sequence>
<xs:element name="HMACOutputLength" minOccurs="0" type="ds:HMACOutputLengthType"/>
<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
<!-- (0,unbounded) elements from (1,1) external namespace -->
</xs:sequence>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
</xs:complexType>
<!-- Start Reference -->
<xs:element name="Reference" type="ds:ReferenceType"/>
<xs:complexType name="ReferenceType">
<xs:sequence>
<xs:element ref="ds:Transforms" minOccurs="0"/>
<xs:element ref="ds:DigestMethod"/>
<xs:element ref="ds:DigestValue"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
<xs:attribute name="URI" type="xs:anyURI" use="optional"/>
<xs:attribute name="Type" type="xs:anyURI" use="optional"/>
</xs:complexType>
<xs:element name="Transforms" type="ds:TransformsType"/>
<xs:complexType name="TransformsType">
<xs:sequence>
<xs:element ref="ds:Transform" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="Transform" type="ds:TransformType"/>
<xs:complexType name="TransformType" mixed="true">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:any namespace="##other" processContents="lax"/>
<!-- (1,1) elements from (0,unbounded) namespaces -->
<xs:element name="XPath" type="xs:string"/>
</xs:choice>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
</xs:complexType>
<!-- End Reference -->
<xs:element name="DigestMethod" type="ds:DigestMethodType"/>
<xs:complexType name="DigestMethodType" mixed="true">
<xs:sequence>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
</xs:complexType>
<xs:element name="DigestValue" type="ds:DigestValueType"/>
<xs:simpleType name="DigestValueType">
<xs:restriction base="xs:base64Binary"/>
</xs:simpleType>
<!-- End SignedInfo -->
<!-- Start KeyInfo -->
<xs:element name="KeyInfo" type="ds:KeyInfoType"/>
<xs:complexType name="KeyInfoType" mixed="true">
<xs:choice maxOccurs="unbounded">
<xs:element ref="ds:KeyName"/>
<xs:element ref="ds:KeyValue"/>
<xs:element ref="ds:RetrievalMethod"/>
<xs:element ref="ds:X509Data"/>
<xs:element ref="ds:PGPData"/>
<xs:element ref="ds:SPKIData"/>
<xs:element ref="ds:MgmtData"/>
<xs:any processContents="lax" namespace="##other"/>
<!-- (1,1) elements from (0,unbounded) namespaces -->
</xs:choice>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="KeyName" type="xs:string"/>
<xs:element name="MgmtData" type="xs:string"/>
<xs:element name="KeyValue" type="ds:KeyValueType"/>
<xs:complexType name="KeyValueType" mixed="true">
<xs:choice>
<xs:element ref="ds:DSAKeyValue"/>
<xs:element ref="ds:RSAKeyValue"/>
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
</xs:complexType>
<xs:element name="RetrievalMethod" type="ds:RetrievalMethodType"/>
<xs:complexType name="RetrievalMethodType">
<xs:sequence>
<xs:element ref="ds:Transforms" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="URI" type="xs:anyURI"/>
<xs:attribute name="Type" type="xs:anyURI" use="optional"/>
</xs:complexType>
<!-- Start X509Data -->
<xs:element name="X509Data" type="ds:X509DataType"/>
<xs:complexType name="X509DataType">
<xs:sequence maxOccurs="unbounded">
<xs:choice>
<xs:element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/>
<xs:element name="X509SKI" type="xs:base64Binary"/>
<xs:element name="X509SubjectName" type="xs:string"/>
<xs:element name="X509Certificate" type="xs:base64Binary"/>
<xs:element name="X509CRL" type="xs:base64Binary"/>
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:complexType name="X509IssuerSerialType">
<xs:sequence>
<xs:element name="X509IssuerName" type="xs:string"/>
<xs:element name="X509SerialNumber" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
<!-- End X509Data -->
<!-- Begin PGPData -->
<xs:element name="PGPData" type="ds:PGPDataType"/>
<xs:complexType name="PGPDataType">
<xs:choice>
<xs:sequence>
<xs:element name="PGPKeyID" type="xs:base64Binary"/>
<xs:element name="PGPKeyPacket" type="xs:base64Binary" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
<xs:sequence>
<xs:element name="PGPKeyPacket" type="xs:base64Binary"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:choice>
</xs:complexType>
<!-- End PGPData -->
<!-- Begin SPKIData -->
<xs:element name="SPKIData" type="ds:SPKIDataType"/>
<xs:complexType name="SPKIDataType">
<xs:sequence maxOccurs="unbounded">
<xs:element name="SPKISexp" type="xs:base64Binary"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<!-- End SPKIData -->
<!-- End KeyInfo -->
<!-- Start Object (Manifest, SignatureProperty) -->
<xs:element name="Object" type="ds:ObjectType"/>
<xs:complexType name="ObjectType" mixed="true">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:any namespace="##any" processContents="lax"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
<xs:attribute name="MimeType" type="xs:string" use="optional"/> <!-- add a grep facet -->
<xs:attribute name="Encoding" type="xs:anyURI" use="optional"/>
</xs:complexType>
<xs:element name="Manifest" type="ds:ManifestType"/>
<xs:complexType name="ManifestType">
<xs:sequence>
<xs:element ref="ds:Reference" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="SignatureProperties" type="ds:SignaturePropertiesType"/>
<xs:complexType name="SignaturePropertiesType">
<xs:sequence>
<xs:element ref="ds:SignatureProperty" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="SignatureProperty" type="ds:SignaturePropertyType"/>
<xs:complexType name="SignaturePropertyType" mixed="true">
<xs:choice maxOccurs="unbounded">
<xs:any namespace="##other" processContents="lax"/>
<!-- (1,1) elements from (1,unbounded) namespaces -->
</xs:choice>
<xs:attribute name="Target" type="xs:anyURI" use="required"/>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<!-- End Object (Manifest, SignatureProperty) -->
<!-- Start Algorithm Parameters -->
<xs:simpleType name="HMACOutputLengthType">
<xs:restriction base="xs:integer"/>
</xs:simpleType>
<!-- Start KeyValue Element-types -->
<xs:element name="DSAKeyValue" type="ds:DSAKeyValueType"/>
<xs:complexType name="DSAKeyValueType">
<xs:sequence>
<xs:sequence minOccurs="0">
<xs:element name="P" type="ds:CryptoBinary"/>
<xs:element name="Q" type="ds:CryptoBinary"/>
</xs:sequence>
<xs:element name="G" type="ds:CryptoBinary" minOccurs="0"/>
<xs:element name="Y" type="ds:CryptoBinary"/>
<xs:element name="J" type="ds:CryptoBinary" minOccurs="0"/>
<xs:sequence minOccurs="0">
<xs:element name="Seed" type="ds:CryptoBinary"/>
<xs:element name="PgenCounter" type="ds:CryptoBinary"/>
</xs:sequence>
</xs:sequence>
</xs:complexType>
<xs:element name="RSAKeyValue" type="ds:RSAKeyValueType"/>
<xs:complexType name="RSAKeyValueType">
<xs:sequence>
<xs:element name="Modulus" type="ds:CryptoBinary"/>
<xs:element name="Exponent" type="ds:CryptoBinary"/>
</xs:sequence>
</xs:complexType>
<!-- End KeyValue Element-types -->
<!-- End Signature -->
</xs:schema>
===============================================================================
Code for registering the xml-schema
begin
dbms_xmlschema.deleteSchema('http://xmlns.oracle.com/xdb/schemas/DNTSB/www.sporfori.fo/schemas/www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd',
dbms_xmlschema.DELETE_CASCADE_FORCE);
end;
begin
DBMS_XMLSCHEMA.REGISTERURI(
schemaurl => 'http://www.sporfori.fo/schemas/www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd',
schemadocuri => 'http://www.sporfori.fo/schemas/www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd',
local => TRUE,
gentypes => TRUE,
genbean => FALSE,
gentables => TRUE,
force => FALSE,
owner => 'DNTSB',
options => 0);
end;
Test program
-- Created on 17-07-2006 by EEJ
declare
XML_TEXT3 CLOB := '<Object xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignatureProperties>
<SignatureProperty Target="">
<Timestamp xmlns="http://www.sporfori.fo/schemas/dnts/general/2006/11/14">2007-05-10T12:00:00-05:00</Timestamp>
</SignatureProperty>
</SignatureProperties>
</Object>';
xmldoc xmltype;
begin
xmldoc := xmltype(xml_text3);
insert into signaturetable
(xml_document, ts)
values
(xmldoc, current_timestamp);
end;
Platform information
Operating system:
-bash-3.00$ uname -a
SunOS dntsdb 5.10 Generic_125101-09 i86pc i386 i86pc
SQLPlus:
SQL*Plus: Release 10.2.0.3.0 - Production on Fri Aug 17 00:15:13 2007
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Enter password:
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning and Data Mining options
Kind Regards,
EyðunYou should report this in a service request on http://metalink.oracle.com.
It is a shame that you put all the effort here to describe your problem, but on the other hand you can now also copy & paste the question to Oracle Support.
Because you are using 10.2.0.3; I am guessing that you have a valid service contract... -
All, I'm trying fix an issue with transactional replication where replication monitor is showing the push to the subscriber is failing because of the error, "Cannot update identity column." I've tried to use sp_browsereplcmds to pull up the
command that's failing based on the xact_seqno but when I try that I get the error:
Number: 102, State: 1, Procedure: , LineNumber: 0, Server: , Source: .Net SqlClient Data Provider
Message: Incorrect syntax near '┻'.
I'd like to fix the issue without having to rebuild replication during a maintenance window. I know you cannot publish tables with primary keys, but I'm wondering if dropping the identity column on this table might fix the issue. I'm considering
that but I would prefer to be able to pull the command that's trying to update the identity column, throw in SET IDENTITY_INSERT ON and remove the commands from the distribution database, but if that doesn't work I'm open to ideas of just dropping the primary
key on the replicated table. I think that should be fine.
Does anyone have any recommendations on how to view the command that's failing?
Or if dropping the primary key on the subscriber table would create issues with the publisher (since it is also the primary key)?
Or, know of any other ways in which to address this issue? Thanks.Unfortunately, no. The error was a bit of a red herring. In the end the subscriber was missing all of the stored procedures needed to update data in the published tables (i.e., the procedures for performing inserts/updates/deletes were missing
for every table in the subscriber database). Additionally, I could not recreate these stored procedures using sp_scriptpublicationcustomprocs
because another procedure which was required for that proc to work was also missing. In short, there were hundreds of missing stored procedures in the subscriber database on which transactional replication is dependent in order to replicate DML changes and
function normally and this includes system sprocs which would've been used to recreate the missing DML procs. In short, the subscriber was badly damaged and deemed to be unrecoverable within a reasonable time frame.
The solution was to tear down and start over, which we did successfully later in the evening. -
How to update schema-base xmltype by dba?error ORA-19007
Hi ,
Connect to db using user 'u1', register schema to LOCAL and update schema-base xmltype success. Then I login in db as dba, update xmltype occus ORA-19007. If I register the schema to GLOBAL, using dba to update xmltype has no problem. But how to update schema-base xmltype who's schema is register as LOCAL by dba?
connect to db using user ‘U1’:
declare
begin
dbms_xmlschema.registerSchema(
'http://www.oradev.com/myschetest.xsd',
'<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.oradev.com/myschetest.xsd"
xmlns:sch="http://www.oradev.com/myschetest.xsd"
version="1.0" elementFormDefault="qualified">
<element name = "Employee">
<complexType>
<sequence>
<element name = "EmployeeId" type = "positiveInteger"/>
<element name = "FirstName" type = "string"/>
<element name = "LastName" type = "string"/>
<element name = "Salary" type = "positiveInteger"/>
</sequence>
</complexType>
</element>
</schema>',TRUE, TRUE, FALSE, FALSE);
end;
SCHEMA register as LOCAL.
create table globtest(id number, content sys.xmltype)XMLTYPE content STORE AS OBJECT RELATIONAL XMLSCHEMA "http://www.oradev.com/myschetest.xsd" ELEMENT "Employee";
It's OK.
insert into globtest values(1, sys.XMLType.createXML('<Employee xmlns="http://www.oradev.com/myschetest.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oradev.com/myschetest.xsd http://www.oradev.com/myschetest.xsd"><EmployeeId>1234</EmployeeId><FirstName>Ravi</FirstName><LastName>Murthy</LastName><Salary>100</Salary></Employee>'));
It's OK.
update U1.globtest set content = sys.XMLType.createXML('<Employee xmlns="http://www.oradev.com/myschetest.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oradev.com/myschetest.xsd http://www.oradev.com/myschetest.xsd"><EmployeeId>1234</EmployeeId><FirstName>'||unistr('\0080\0081')||unistr('\0085')||'Ravi</FirstName><LastName>Murthy</LastName><Salary>100</Salary></Employee>') where id=1;
It's OK.
but when i login in as dba,
using above update sql. It has probleam.ORA-19007.
How can i using dba to update this LOCAL schema-base xmltype? Thanks a lot.User 'U1' is created by:
create user u1 identified by u1;
grant dba to u1;
Is there any other privilege need to be grant to u1? -
ORA-00600 occurs on an extract from a large xmlType column
When running the extract() function where search criteria has been specified (for an existing node), I receive the following error:
ORA-00600: internal error code, arguments: [qmxdMatchingChildren:overflow-1],[], [], [], [], [], [], []
However, if I remove the search criteria, the fragment returns no error.
Both queries have been working successfully on smaller documents.
Example with criteria:
SELECT extract(tab.xml_text,'//item[@val="2.1.2.2"]') ITEM
FROM CUR.ITEMS tab
WHERE item_id =271;
Example without criteria:
SELECT extract(tab.xml_text,'//item') ITEM
FROM CUR.ITEMS tab
WHERE item_id =271;
I'm estimating that the document inside the xmltype column is 4MB.
The database is Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options.Jennifer,
You may be encountering the following bug:
Bug# 3617191 See Note 3617191.8
OERI[qmxdmatchingchildren:overflow-1] using EXTRACT from large XML document
Fixed: 10.1.0.4, 10.2 -
How to save and retrive table column values added via view enhancement
Hi,
I want to enhance standard webdynpro component FITE_VC_REVIEW.
I want to add new column to Fight Info Table and also to Hotel Info table.I can do UI changes via view enhancement .
First Approach: I add new fields to Flight Info and Hotel Info structure.
Create an additional Coolum in Flight Info and Hotel Info Table and Bind it to newly created field in structures.
Question :
What all changes I have to make to save and retrieve values from database table.
Kindly guide with Steps
Second Approach: I create a new table/structure for my requirement and bind table column to these fields.
Question:
What all changes I have to make to save and retrieve values from database table.
Kindly guide with Steps
And which approach will be good.
Regards,
Madhvikano ans yet
-
Update query for XMLTYPE column
Hello everyone,
I have inserted xml data into XMLTYPE column of my table,xml data is something like this
<Data type="FYI">
<ID xmlns="http://orcl.com">T-1-1</ID>
<Category>FRAME</Category>
<ProductID>1</ProductID>
<Name xmlns="http://orcl.com">Frame </Name>
<Type>BASIC</Type>
<Code>INSTALL</Code>
<NodeID>1</NodeID>
</Data>
Now i need to update the values inside the <Data> element,like
ID == T-2-2
Category == IFRAME
ProductID == 1.1
Name == IFRAME
We are using oracle 10g R2.
Please help me out how to update. It would be very thankfull for your valuble suggestions
Thanks in advance<Services>
<DataService type="FRLY">
<ID xmlns="http://www.openapplications.org/oagis/9">T-1-1-FRLY</ID>
<CategoryCode>FRAME</CategoryCode>
<ProductOfferingID>1</ProductOfferingID>
<Name xmlns="http://www.openapplications.org/oagis/9">Frame Relay</Name>
<SubType>FRLY - BASIC</SubType>
<ActionCode>INSTALL</ActionCode>
<NodeID>1</NodeID>
<Contract>
<ID xmlns="http://www.openapplications.org/oagis/9" schemeName="Networx Universal">00000</ID>
<Category name="Contract Type">U</Category>
</Contract>
<Contract>
<Type xmlns="http://www.openapplications.org/oagis/9">Routine</Type>
</Contract>
<CustomerParty>
<Location/>
</CustomerParty>
<ProvisioningStatus type="BillingSetup">
<Description xmlns="http://www.openapplications.org/oagis/9">C</Description>
</ProvisioningStatus>
<MileStone>
<ID xmlns="http://www.openapplications.org/oagis/9">CWD</ID>
<Date>2007-01-29</Date>
</MileStone>
<ActivityStatus>
<Code xmlns="http://www.openapplications.org/oagis/9" name="DueDate"/>
<EffectiveDateTime xmlns="http://www.openapplications.org/oagis/9">2007-01-29T00:00:00Z</EffectiveDateTime>
</ActivityStatus>
<AssociatedIDs>
<ID xmlns="http://www.openapplications.org/oagis/9">1</ID>
</AssociatedIDs>
<AssociatedIDs>
<TemporaryID schemeName="OPKEY">34908</TemporaryID>
</AssociatedIDs>
<Location>
<ID xmlns="http://www.openapplications.org/oagis/9">T-510092</ID>
</Location>
<OrderID>RequestID</OrderID>
<Accessory>
<ActionCode>ADD</ActionCode>
<Description xmlns="http://www.openapplications.org/oagis/9">IBM ESERVER-XSERIES306</Description>
<CategoryCode>5</CategoryCode>
<InstallVendorParty>
<Name xmlns="http://www.openapplications.org/oagis/9">MCI</Name>
</InstallVendorParty>
</Accessory>
<Circuit>
<ID xmlns="http://www.openapplications.org/oagis/9">T-1-1-FRLY</ID>
<AssociatedIDs/>
</Circuit>
</DataService>
</Services>
This was my xml which i have inserted into DB for the column XMLTYPE.Now i need to update few values in this whole file like values of
ID under<DataService>
Name under <DataService>
ID under <Contract>
Description under <ProvisioningStatus>
i was using the UPDATEXML query to update those it's saying i row updated but when i extract it says null.
Please help me out to solve this problem.
Thanks in advance. -
Correct way to handle updates of XMLtype columns in standard tables.
Hello to whoever may read this,
I am currently studying the XML functionality of oracle DB for a uni project.
We have been asked to compare/contrast solutions to publishing product and price data for data stored in standard relational tables, and data stored in XML type tables. For extra marks, i am looking at a table containing an XMLType column for multiple items of data relating to the primarykey.
I have managed to get my head around publishing the data - pretty straight forward, but we have also been asked to show how we can update data, which isn't a problem within the standard tables/columns, but when it comes to the XMLType columns/tables, i dont have a clue.
At the moment i am working on trying to update an XMLtype column. The table itself is a "product" table, and contains product information, as well as an XMLType column containing multiple changes to the prices. In the relational tables, this "product" table has a one-to-many link to another table called price_history which contains details about past prices (which is populated by a trigger on update/insert of a new price). But in this table all the product changes are stored in XML format in the XML type column "prices".
Table columns: id number(4), name varchar2(25), prices xmltype;
example data: 1781, CDW 20/48/E, <product_prices><price_change>
<change_id>1</change_id>
<date_changed>2009-10-13</date_changed>
<details>price increased</details>
<new_value>234</new_value>
</price_change>
<price_change>
<change_id>2</change_id>
<date_changed>2009-10-13</date_changed>
<details>price increased</details>
<new_value>235</new_value>
</price_change></product_prices>
We need to give examples of an update. I have been looking around the net, and these forums for a solution now for about 4 hours. My own thoughts are that to update this with a new price change i need to, SELECT the current data INTO a variable, then concatenate that variable with the new price change info e.g.
<price_change>
<change_id>3</change_id>
<date_changed>2009-10-13</date_changed>
<details>price decreased</details>
<new_value>230</new_value>
</price_change>
then insert that whole chunk of data again to overwrite the old data.
Now im fairly certain there is some function somewhere which will allow me to do this update/insert operation without going through this process... After i am done with this update of XMLType column data, i need to tackle updating data in an XMLType Table with XQuery(? apparently), so if you have any pointers for that please let me know.
Could one of you experts point me in the right direction for this? Any advice at this stage is a great help and will stop me losing my mind.
p.s. im sorry about the lengthy description of the problem/solution required. How to describle something i dont understand? I ask myself.Hi,
You really need to take a look at the XMLDB Developers guide.
For updating XML with SQL/XML see UPDATEXML and for XQuery see [Using XQuery with Oracle XMLDB|http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14259/xdb_xquery.htm#sthref1673]
HTH,
Chris -
Impdp, XMLType column and ora-26093
Hello!
I have some problem with importing XMLType columns with data longer than 2000 symbols.
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
test data:
create table some_tab (id varchar2(10), xml XMLType);
insert into some_tab values('short', XMLType('<foo></foo>'));
-- we use clob to pass more than 2000 symbols
declare
c clob := '<x> || lpad('</x>', 2700, 'a');
begin
insert into some_tab values('long', XMLType(c));
end;
then I export data with expdp...
and if I import dump into other schema on the same server - that's ok,
BUT if I import data into schema on other server - I have this error:
KUP-11007: conversion error loading table ......
ORA-26093: input data column size (2707) exceeds the maximum input size (2000)
KUP-11009: data for row: ....
what I'm doing wrong?
thank youuser2606534 wrote:
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
ORA-26093: input data column size (2707) exceeds the maximum input size (2000)
Bug 7209038
DATAPUMP NOT IMPORTING XMLTYPE OBJECTS. ORA-26093
Currently no workaround is available for this, although 11gR2 should have it fixed. -
ORA-00904 on create table with xmltype column
Hi,
I am trying to create a table with syntax
CREATE TABLE ss_test(docid integer primary key, content varchar2(4000),acl XMLType)
XMLType column acl store as object relational
XMLSchema "acl.xsd" element "acl"
varray xmldata."ace" store as table ace_tab;
and getting ORA-00904.
acl.xsd is registered as
begin
dbms_xmlschema.registerschema('acl.xsd',
' <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xdb="http://xmlns.oracle.com/xdb">
<xs:element name="acl" xdb:SQLType="ACL_TYPE">
<xs:complexType>
<xs:sequence>
<xs:element name="ace" maxOccurs="100">
<xs:complexType>
<xs:attribute name="id" type="xs:integer"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>',true,true,false,false);
end;
Couldnt figure out whats wrong with the syntax. Any pointers ?
Thanks,
RakeshHmmmm ... I don't know if I should smile or frown with the implication that I am an OO guy :D :D
Most of my colleagues when I started working as a software engineer, treated me as too low-level because of my C background (started doing C in 1985).
In my last job, my colleagues hated my guts because I was asking them to squeeze every bit of performance out of C++ by using STL which is definitely not OO (although C++ is).
My current colleagues treat me as a DB guru (which I most definitely am not) and they overlook/forget the fact that most of them use Java libraries in their projects, that I wrote for them !
I am inclined to believe that I do not fall into any category in the end...
The only thing I am for sure - and I am proud of it - is inquisitive. I want to know everything there is about the tools I use, and so I end up spending hours and hours investigating... (Microsoft found that out the hard way when I filed 16 bug reports in 8 days when Visual C++ 6 came out ! Not that it hurt them though...)
This is where my confession ends (and my working on the XML validator starts...)
Καληνύχτα Marco
Philip (Φίλιππος in Greek)
PS: I did not follow the last solution anyway. I just wanted to verify its operability ;)
Maybe you are looking for
-
Is that MSI NX6800LE-TD 256 same as NX6800LE 128 with douple amount of memory or is there some new improvements ? allthough i cant find any 6800LE product´s from the msi product catergory. This is an PCI-E card. Just seeking for good/cheap PCI-E card
-
T-code to know the status of a request
Hi all, Can u please provide me the t-code in BI to check a particular request's stauts.
-
I've also posted this in the displays board but thought I'd post it here too: I have recently been having a problem with my disply on my laptop and linked screen, which also happens when the laptop on working on it's own. Basically, spots of colour a
-
Hi Expert how can I break the report by document no by seeing the below codes . *& T O P - O F - P A G E * WRITE:/ 'UDATE:' ,SY-DATUM. FORMAT COLOR 4 INTENSIFIED on. Write: /35 ' DOCUMENT CHANGES REPORT '. WRITE: /5 'DOCUMEN
-
Compression ratio of external file attachement
Dear All, SAP is giving facility to attached a external files such as PDF,XLS,DOC,Autocad etc in ME21n, ME22N i.e. related to purchase order. I wanted to know is SAP compress thease files. If yes what is the compression ration? e.g. PDF file is of 2