Can't insert xmlfile in xmltype table
I am learning Oracle XML db and trying to create a table and insert xml files. I have create a table of xmltype, a director and upload some xml files in the reposity. The xml files don't have schema. I can't register the schema. When I inserted the xml files into the table, I got some errors. The code is below:
create table metadata of XMLType;
CREATE DIRECTORY xmldir AS '/home/SMAPS/xml';
INSERT INTO metadata VALUES (XMLType(bfilename('xmldir', 'on_28.xml'),
nls_charset_id('AL32UTF8')));
INSERT INTO metadata VALUES (XMLType(bfilename('xmldir', 'on_28.xml'),
ERROR at line 1:
ORA-22285: non-existent directory or file for FILEOPEN operation
ORA-06512: at "SYS.DBMS_LOB", line 523
ORA-06512: at "SYS.XMLTYPE", line 287
ORA-06512: at line 1
Who can give me a answer, thank you so much.
Kevin
Be also aware that linux/unix is case sensitive regarding directory and file naming plus
shouldn't it be the following (be aware of the literals)
CREATE DIRECTORY xmldir AS '/home/SMAPS/xml';
INSERT INTO metadata VALUES (XMLType(bfilename('XMLDIR', 'on_28.xml'), nls_charset_id('AL32UTF8')));You didn't use double quotes so your alias is in upper case not 'xmldir' - if you had done "xmldir" that would have been a different issue.
I mention it here just to make sure.
Edited by: Marco Gralike on Feb 13, 2009 1:26 AM
Similar Messages
-
In ADF how can i insert data in multiple table if they have foreign key
I have started working on ADF and can anybody inform me in ADF how can i insert data in multiple table if they have foreign key,please?
Thnak you very much.Hello,
Still no luck.I am surely doing silly mistakes.Anyway,Here are my workings-
1> student_mst (id(pk),studentname) and student_guard_mst(id(fk),guardianname)
2> created EO from both of the tables,made id in both EO as DBSequence and an association was also generated.
3> i made that association composite by clicking the checkbox
4> i created 2 VO from 2 EO.
5> put those VO in Application Module.
6> dragged and dropped 2 VO on my jspx page and dropped them as ADF Form.
Now what to do please? -
Can not insert/update data from table which is created from view
Hi all
I'm using Oracle database 11g
I've created table from view as the following command:
Create table table_new as select * from View_Old
I can insert/update data into table_new by command line.
But I can not Insert/update data of table_new by SI Oject Browser tool or Oracle SQL Developer tool .(read only)
Anybody tell me, what's happend? cause?
Thankyou
thiensu
Edited by: user8248216 on May 5, 2011 8:54 PM
Edited by: user8248216 on May 5, 2011 8:55 PMI can insert/update data into table_new by command line.
But I can not Insert/update data of table_new by SI Oject Browser tool or Oracle SQL Developer tool .(read only)so what is wrong with the GUI tools & why posting to DATABASE forum when that works OK? -
Can't Insert Into Self Defined Table
Hi,
i have been constructed a table and tried to insert data into this table, but get an 'Invalid Code' error. Does anybody know why?
I'm using Business One 6.5.
Here is my Java-Code:
private void insertIntoUserTable(ICompany comp) {
IUserTables tables;
IUserTable table;
try {
tables = comp.getUserTables();
table = comp.getUserTables().item("atotabelle");
table.getUserFields().getFields().item("U_TF0").setValue("Value1");
table.getUserFields().getFields().item("U_TF1").setValue("Value2");
table.getUserFields().getFields().item("U_TF2").setValue("Value3");
table.getUserFields().getFields().item("U_TF3").setValue("Value4");
if (table.add() == 0) {
System.out.println("Success!");
} else {
System.out.println("Error occured!");
System.out.println(comp.getLastError().getErrorMessage());
} catch (Exception e) {
e.printStackTrace();
Greetings
Message was edited by: Ahmet TokalakHi Ahmet,
You must set the following properties in the IUserTable object
setCode - Returns or sets a string that specifies the key value for the current record.
setName - Returns or sets a string that specifies the value of this record.
I got these explanation from the DI API Help file.
I think the code value must be unique for each value
private void insertIntoUserTable(ICompany comp) {
IUserTables tables;
IUserTable table;
try {
tables = comp.getUserTables();
table = comp.getUserTables().item("atotabelle");
table.setCode("4");
table.setName("4");
table.getUserFields().getFields().item("U_TF0").setValue("Value1");
table.getUserFields().getFields().item("U_TF1").setValue("Value2");
table.getUserFields().getFields().item("U_TF2").setValue("Value3");
table.getUserFields().getFields().item("U_TF3").setValue("Value4");
if (table.add() == 0) {
System.out.println("Success!");
} else {
System.out.println("Error occured!");
System.out.println(comp.getLastError().getErrorMessage());
} catch (Exception e) {
e.printStackTrace();
Thanks,
Cormac -
Can't insert schema-based xmltype into binary xmltype table
I'm having issues trying to use binary storage along with the ALLOW ANYSCHEMA clause. I can't use the XMLSchema-instance mechanism for creating my schema-based XMLType instances, so I'm using CreateSchemaBasedXml. When I try to insert the XMLType into the table, however, it seems to think it's not schema-based and throws an error. I trimmed down my schema for the purposes of this example. Here's the schema (schematest.xsd):
<?xml version="1.0" encoding="Windows-1252"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="FORMINFO">
<xs:complexType>
<xs:sequence>
<xs:element name="SUBJECT">
<xs:complexType>
<xs:sequence>
<xs:element name="ADDR">
<xs:complexType>
<xs:sequence>
<xs:element name="STREET" type="xs:string" />
<xs:element name="CITY" type="xs:string" />
<xs:element name="STATEPROV" type="xs:string" />
<xs:element name="ZIP" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>Here's the instance file (schema testinst.xml):
<?xml version="1.0" encoding="utf-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>I registered the schema and created the test table:
BEGIN
DBMS_XMLSCHEMA.registerschema(
schemaurl => 'http://localhost/schematest.xsd',
schemadoc => bfilename('XMLDIR','schematest.xsd'),
gentables => false,
gentypes => false,
csid => nls_charset_id('AL32UTF8'),
options => DBMS_XMLSCHEMA.REGISTER_BINARYXML);
END;
CREATE TABLE BINARYTEST OF XMLType
XMLTYPE STORE AS BINARY XML
ALLOW ANYSCHEMA;But trying to insert gives me an ORA-44422 error (this is on Oracle 11.1.0.7.0 Enterprise):
SQL> SET SERVEROUTPUT ON
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(bfilename('XMLDIR', 'schematestinst.xml'), nls_charset_id('AL32UTF8'));
6 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
7 xschema.SchemaValidate();
8 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValidated());
9
10 INSERT INTO BINARYTEST
11 VALUES (xschema);
12 commit;
13 end;
14 /
Schema: http://localhost/schematest.xsd Validated: 1
declare
ERROR at line 1:
ORA-44422: nonschema XML disallowed for this column
ORA-06512: at line 10You can see from my put_line statement that the XMLType object is reporting its schema URL correctly and thinks it's been validated. Changing the table to "ALLOW NONSCHEMA" allows the insert, but it inserts it as a non-schema-based document. Am I skipping a step here?
Thanks,
JimIt might be a bug, but I am not yet sure...
See the following examples...
c:\>C:\oracle\product\11.1.0\db_1\bin\sqlplus.exe /nolog
SQL*Plus: Release 11.1.0.7.0 - Production on Mon Mar 23 22:14:41 2009
Copyright (c) 1982, 2008, Oracle. All rights reserved.
SQL> drop user otn cascade;
User dropped.
SQL> create user otn identified by otn;
User created.
SQL> grant xdbadmin, dba to otn;
Grant succeeded.
SQL> conn otn/otn
connected.
SQL> var schemaPath varchar2(256)
SQL> var schemaURL varchar2(256)
SQL>
SQL> begin
2 :schemaURL := 'http://localhost/schematest.xsd';
3 :schemaPath := '/public/schematest.xsd';
4 end;
5 /
PL/SQL procedure successfully completed.
SQL>
SQL> declare
2 res boolean;
3 xmlSchema xmlType := xmlType('<?xml version="1.0" encoding="Windows-1252"?>
4 <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
5 <xs:element name="FORMINFO">
6 <xs:complexType>
7 <xs:sequence>
8 <xs:element name="SUBJECT">
9 <xs:complexType>
10 <xs:sequence>
11 <xs:element name="ADDR">
12 <xs:complexType>
13 <xs:sequence>
14 <xs:element name="STREET" type="xs:string" />
15 <xs:element name="CITY" type="xs:string" />
16 <xs:element name="STATEPROV" type="xs:string" />
17 <xs:element name="ZIP" type="xs:string" />
18 </xs:sequence>
19 </xs:complexType>
20 </xs:element>
21 </xs:sequence>
22 </xs:complexType>
23 </xs:element>
24 </xs:sequence>
25 </xs:complexType>
26 </xs:element>
27 </xs:schema>');
28 begin
29 if (dbms_xdb.existsResource(:schemaPath)) then
30 dbms_xdb.deleteResource(:schemaPath);
31 end if;
32 res := dbms_xdb.createResource(:schemaPath,xmlSchema);
33 end;
34 /
PL/SQL procedure successfully completed.
SQL> commit;
Commit complete.
SQL> call dbms_xmlschema.deleteSchema(:schemaURL,4);
Call completed.
SQL> BEGIN
2 DBMS_XMLSCHEMA.registerSchema(
3 SCHEMAURL => :SchemaURL,
4 SCHEMADOC => xdbURIType(:SchemaPath).getClob(),
5 LOCAL => FALSE, -- local
6 GENTYPES => FALSE, -- generate object types
7 GENBEAN => FALSE, -- no java beans
8 GENTABLES => FALSE, -- generate object tables
9 OPTIONS => DBMS_XMLSCHEMA.REGISTER_BINARYXML,
10 OWNER => USER
11 );
12 END;
13 /
PL/SQL procedure successfully completed.
SQL> commit;
Commit complete.
SQL> var schemaDoc varchar2(256)
SQL>
SQL> begin
2 :schemaDoc := '/public/schematest.xml';
3 end;
4 /
PL/SQL procedure successfully completed.
SQL>
SQL> ----------------------------------------------------------
SQL>
SQL> -- Create an XML Document in the repository
SQL>
SQL> ----------------------------------------------------------
SQL>
SQL> declare
2 res boolean;
3 xmlDoc xmlType := xmlType('<?xml version="1.0" encoding="utf-8"?>
4 <FORMINFO>
5 <SUBJECT>
6 <ADDR>
7 <STREET>123 Main St</STREET>
8 <CITY>Las Vegas</CITY>
9 <STATEPROV>NV</STATEPROV>
10 <ZIP>12345</ZIP>
11 </ADDR>
12 </SUBJECT>
13 </FORMINFO>');
14 begin
15 if (dbms_xdb.existsResource(:schemaDoc)) then
16 dbms_xdb.deleteResource(:schemaDoc);
17 end if;
18 res := dbms_xdb.createResource(:schemaDoc,xmlDoc);
19 end;
20 /
PL/SQL procedure successfully completed.
SQL>
SQL> ----------------------------------------------------------
SQL>
SQL> -- Ready to test
SQL>
SQL> ----------------------------------------------------------
SQL>
SQL> select * from tab;
no rows selected
SQL> CREATE TABLE BINARYTEST OF XMLType
2 XMLTYPE STORE AS BINARY XML
3 ALLOW ANYSCHEMA;
Table created.
SQL> set long 100000
SQL> select dbms_metadata.get_ddl('TABLE','BINARYTEST',user) from dual;
DBMS_METADATA.GET_DDL('TABLE','BINARYTEST',USER)
CREATE TABLE "OTN"."BINARYTEST" OF "SYS"."XMLTYPE"
OIDINDEX ( PCTFREE 10 INITRANS 2 MAXTRANS 255
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS1 BUFFER_POOL DEFAULT)
TABLESPACE "USERS" )
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
TABLESPACE "USERS"
XMLTYPE COLUMN OBJECT_VALUE STORE AS BASICFILE BINARY XML (
TABLESPACE "USERS" ENABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10
NOCACHE LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT))
DISALLOW NONSCHEMA
ALLOW ANYSCHEMA
1 row selected.
SQL> SET SERVEROUTPUT ON
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
7 xschema.SchemaValidate();
8 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValidated());
9
10 INSERT INTO BINARYTEST
11 VALUES (xschema);
12 commit;
13 end;
14 /
Schema: http://localhost/schematest.xsd Validated: 1
declare
ERROR at line 1:
ORA-44422: nonschema XML disallowed for this column
ORA-06512: at line 10
-- ORA-44421: cannot DISALLOW NONSCHEMA without a SCHEMA clause
-- Cause: If no SCHEMA clause (explicit schema or ANYSCHEMA) was specified, nonschema data cannot be disallowed.-
-- Action: Remove DISALLOW NONSCHEMA or add some SCHEMA clause.
SQL> drop table binarytest;
Table dropped.
SQL> CREATE TABLE BINARYTEST OF XMLType
2 XMLTYPE STORE AS BINARY XML
3 ALLOW NONSCHEMA;
Table created.
SQL> select dbms_metadata.get_ddl('TABLE','BINARYTEST',user) from dual;
DBMS_METADATA.GET_DDL('TABLE','BINARYTEST',USER)
CREATE TABLE "OTN"."BINARYTEST" OF "SYS"."XMLTYPE"
OIDINDEX ( PCTFREE 10 INITRANS 2 MAXTRANS 255
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS1 BUFFER_POOL DEFAULT)
TABLESPACE "USERS" )
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
TABLESPACE "USERS"
XMLTYPE COLUMN OBJECT_VALUE STORE AS BASICFILE BINARY XML (
TABLESPACE "USERS" ENABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10
NOCACHE LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT))
ALLOW NONSCHEMA
DISALLOW ANYSCHEMA
1 row selected.
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
7 xschema.SchemaValidate();
8 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValidated());
9
10 INSERT INTO BINARYTEST
11 VALUES (xschema);
12 commit;
13 end;
14 /
Schema: http://localhost/schematest.xsd Validated: 1
PL/SQL procedure successfully completed.
SQL> select * from binarytest;
SYS_NC_ROWINFO$
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
1 row selected.
SQL> SET SERVEROUTPUT ON
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6
7 dbms_output.put_line(x.getstringval());
8
9 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
10
11 dbms_output.put_line(xschema.getstringval());
12
13 xschema.SchemaValidate();
14 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValidated());
15
16 INSERT INTO BINARYTEST
17 VALUES (xschema);
18 commit;
19 end;
20 /
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
Schema: http://localhost/schematest.xsd Validated: 1
PL/SQL procedure successfully completed.
SQL> create table ORtest of xmltype
2 xmlschema "http://localhost/schematest.xsd" element "FORMINFO"
3 ;
Table created.
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6
7 dbms_output.put_line(x.getstringval());
8
9 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
10
11 dbms_output.put_line(xschema.getstringval());
12
13 xschema.SchemaValidate();
14 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValid());
15
16 INSERT INTO ORTEST
17 VALUES (xschema);
18 commit;
19 end;
20 /
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
Schema: http://localhost/schematest.xsd Validated: 1
PL/SQL procedure successfully completed.
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6
7 dbms_output.put_line(x.getstringval());
8
9 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
10
11 dbms_output.put_line(xschema.getstringval());
12
13 xschema.SchemaValidate();
14 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValid());
15
16 INSERT INTO BIN_ONE_SCHEMA
17 VALUES (xschema);
18 commit;
19 end;
20 /
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
</ADDR>
</SUBJECT>
</FORMINFO>
Schema: http://localhost/schematest.xsd Validated: 1
PL/SQL procedure successfully completed.
SQL> ----------------------------------------------------------
SQL>
SQL> -- Create an XML Document in the repository
SQL>
SQL> ----------------------------------------------------------
SQL>
SQL> declare
2 res boolean;
3 xmlDoc xmlType := xmlType('<?xml version="1.0" encoding="utf-8"?>
4 <FORMINFO>
5 <SUBJECT>
6 <ADDR>
7 <STREET>123 Main St</STREET>
8 <CITY>Las Vegas</CITY>
9 <STATEPROV>NV</STATEPROV>
10 <ZIP>12345</ZIP>
11 <ONE_TO_MANY>say what?</ONE_TO_MANY>
12 </ADDR>
13 </SUBJECT>
14 </FORMINFO>');
15 begin
16 if (dbms_xdb.existsResource(:schemaDoc)) then
17 dbms_xdb.deleteResource(:schemaDoc);
18 end if;
19 res := dbms_xdb.createResource(:schemaDoc,xmlDoc);
20 end;
21 /
PL/SQL procedure successfully completed.
SQL> declare
2 x XMLType;
3 xschema XMLType;
4 begin
5 x := XMLType(xdbUriType(:SchemaDoc).getClob());
6
7 dbms_output.put_line(x.getstringval());
8
9 xschema := x.CreateSchemaBasedXml('http://localhost/schematest.xsd');
10
11 dbms_output.put_line(xschema.getstringval());
12
13 xschema.SchemaValidate();
14 DBMS_OUTPUT.PUT_LINE('Schema: ' || xschema.GetSchemaURL() || ' Validated: ' || xschema.IsSchemaValid());
15
16 INSERT INTO BIN_ONE_SCHEMA
17 VALUES (xschema);
18 commit;
19 end;
20 /
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
<ONE_TO_MANY>say what?</ONE_TO_MANY>
</ADDR>
</SUBJECT>
</FORMINFO>
<?xml version="1.0" encoding="UTF-8"?>
<FORMINFO>
<SUBJECT>
<ADDR>
<STREET>123 Main St</STREET>
<CITY>Las
Vegas</CITY>
<STATEPROV>NV</STATEPROV>
<ZIP>12345</ZIP>
<ONE_TO_MANY>say what?</ONE_TO_MANY>
</ADDR>
</SUBJECT>
</FORMINFO>
declare
ERROR at line 1:
ORA-31154: invalid XML document
ORA-19202: Error occurred in XML processing
LSX-00213: only 0 occurrences of particle "ADDR", minimum is 1
ORA-06512: at "SYS.XMLTYPE", line 354
ORA-06512: at line 13
SQL> -
How can I insert more than one table into database simultaneously???
I have a problem like that:
I want to update(insert or update) into two tables in DB simultaneously when I click a certain button. Can you help me to solve this.
Thanks.I have tried using a view but I get the Validation Error on a sequence generated attribute (HOTELID) as shown below:
Validation Error
You must correct the following error(s) before proceeding:
JBO-26041: Failed to post data to database during "Insert": SQL Statement "BEGIN INSERT INTO HOTEL_LOGIN_VIEW(HOTELID,HOTELNAME,COUNTRY,LOCALCURRENCY,LOGINNAME,USERPASSWORD,USERROLE) VALUES (:1,:2,:3,:4,:5,:6,:7) RETURNING HOTELID INTO :8; END;".
ORA-01779: cannot modify a column which maps to a non key-preserved table ORA-06512: at line 1
I have not been able to resolve it and would appreciate your help. -
How can I INSERT INTO from Staging Table to Production Table
I’ve got a Bulk Load process which works fine, but I’m having major problems downstream.
Almost everything is Varchar(100), and this works fine.
Except for these fields:
INDEX SHARES, INDEX MARKET CAP, INDEX WEIGHT, DAILY PRICE RETURN, and DAILY TOTAL RETURN
These four fields must be some kind of numeric, because I need to perform sums on these guys.
Here’s my SQL:
CREATE
TABLE [dbo].[S&P_Global_BMI_(US_Dollar)]
[CHANGE]
VARCHAR(100),
[EFFECTIVE DATE]
VARCHAR(100),
[COMPANY]
VARCHAR(100),
[RIC]
VARCHAR(100),
Etc.
[INDEX SHARES]
NUMERIC(18, 12),
[INDEX MARKET CAP]
NUMERIC(18, 12),
[INDEX WEIGHT]
NUMERIC(18, 12),
[DAILY PRICE RETURN]
NUMERIC(18, 12),
[DAILY TOTAL RETURN]
NUMERIC(18, 12),
From the main staging table, I’m writing data to 4 production tables.
CREATE
TABLE [dbo].[S&P_Global_Ex-U.S._LargeMidCap_(US_Dollar)]
[CHANGE]
VARCHAR(100),
[EFFECTIVE DATE]
VARCHAR(100),
[COMPANY]
VARCHAR(100),
[RIC]
VARCHAR(100),
Etc.
[INDEX SHARES]
FLOAT(20),
[INDEX MARKET CAP]
FLOAT(20),
[INDEX WEIGHT] FLOAT(20),
[DAILY PRICE RETURN]
FLOAT(20),
[DAILY TOTAL RETURN]
FLOAT(20),,
INSERT
INTO [dbo].[S&P_Global_Ex-U.S._LargeMidCap_(US_Dollar)]
SELECT
[CHANGE],
Etc.
[DAILY TOTAL RETURN]
FROM
[dbo].[S&P_Global_BMI_(US_Dollar)]
WHERE
isnumeric([Effective Date])
= 1
AND
[CHANGE] is
null
AND
[COUNTRY] <>
'US'
AND ([SIZE] =
'L' OR [SIZE]
= 'M')
The Bulk Load is throwing errors like this (unless I make everything Varchar):
Bulk load data conversion error (truncation) for row 7, column 23 (INDEX SHARES).
Msg 4863, Level 16, State 1, Line 1
When I try to load data from the staging table to the production table, I get this.
Msg 8115, Level 16, State 8, Line 1
Arithmetic overflow error converting varchar to data type numeric.
The statement has been terminated.
There must be an easy way to overcome this, right.
Please advise!
Thanks!!
Knowledge is the only thing that I can give you, and still retain, and we are both better off for it.Nothing is returned. Everything is VARCHAR(100). the problem is this.
If I use FLOAT(18) or REAL, I get exponential numbers, which is useless to me.
If I use DECIMAL(18,12) or NUMERIC(18,12), I get errors.
Msg 4863, Level 16, State 1, Line 41
Bulk load data conversion error (truncation) for row 7, column 23 (INDEX SHARES).
Msg 4863, Level 16, State 1, Line 41
Bulk load data conversion error (truncation) for row 8, column 23 (INDEX SHARES).
Msg 4863, Level 16, State 1, Line 41
Bulk load data conversion error (truncation) for row 9, column 23 (INDEX SHARES).
There must be some data type that fits this!
Here's a sample of what I'm dealing with.
-0.900900901
9.302325581
-2.648171501
-1.402805723
-2.911830584
-2.220960866
2.897762349
-0.219640074
-5.458448607
-0.076626094
6.710940231
0.287200186
0.131682908
0.124276221
0.790818723
0.420505119
Knowledge is the only thing that I can give you, and still retain, and we are both better off for it. -
ORA-30931 (again) when inserting data in XMLType table
Hi,
I've created a table by registrating an XML Schema in the database.
The schema is the following :
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb" xdb:storeVarrayAsTable="true">
<xsd:element name="Customer" type="customerType" xdb:defaultTable="CUSTOMER"/>
<xsd:complexType name="customerType" xdb:maintainDOM="false">
<xsd:sequence>
<xsd:element name="NAME" type="xsd:string" xdb:SQLName="NAME" xdb:SQLType="VARCHAR2"/>
<xsd:element name="EMAIL" type="xsd:string" xdb:SQLName="EMAIL" xdb:SQLType="VARCHAR2"/>
<xsd:element name="ADDRESS" type="xsd:string" maxOccurs="unbounded" xdb:SQLName="ADDRESS" xdb:SQLCollType="ADDRESS_TYPE" xdb:SQLType="VARCHAR2" xdb:maintainOrder="false"/>
<xsd:element name="PHONE" type="phoneType" xdb:SQLName="PHONE"/>
<xsd:element name="DESCRIPTION" type="contentType"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="contentType" xdb:SQLType="CLOB" xdb:maintainDOM="true">
<xsd:sequence>
<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="phoneType">
<xsd:restriction base="xsd:string">
<xsd:pattern value="\\(\\d\{3\}\\)\\d\{3\}-\\d\{4\}"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
Now when I try to do an insert in the table and use mixed case in the contents of the description tag I get an ORA-30931.
Anybody got a clue why?
Thanks for your help!
KrisKris
xsd:any does not allow text() nodes outside of elements, it only allows child elements. If you want to add text() nodes outside of child elements this is mixed text. To get this you want to add mixed="true" to the complexType definition
contentType
SQL> begin
2 dbms_xmlschema.registerSchema('http://localhost:8085/public/customer_simple_ann.xsd',
3 xmltype('<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracl
e.com/xdb" xdb:storeVarrayAsTable="true">
4 <xsd:element name="Customer" type="customerType" xdb:defaultTable="CUSTOMER"/>
5 <xsd:complexType name="customerType" xdb:maintainDOM="false">
6 <xsd:sequence>
7 <xsd:element name="NAME" type="xsd:string" xdb:SQLName="NAME" xdb:SQLType="VARCHAR2"/>
8 <xsd:element name="EMAIL" type="xsd:string" xdb:SQLName="EMAIL" xdb:SQLType="VARCHAR2"/>
9 <xsd:element name="ADDRESS" type="xsd:string" maxOccurs="unbounded" xdb:SQLName="ADDRESS" xdb:S
QLCollType="ADDRESS_TYPE" xdb:SQLType="VARCHAR2" xdb:maintainOrder="false"/>
10 <xsd:element name="PHONE" type="phoneType" xdb:SQLName="PHONE"/>
11 <xsd:element name="DESCRIPTION" type="contentType"/>
12 </xsd:sequence>
13 </xsd:complexType>
14 <xsd:complexType mixed="true" name="contentType" xdb:SQLType="CLOB" xdb:maintainDOM="true">
15 <xsd:sequence>
16 <xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
17 </xsd:sequence>
18 </xsd:complexType>
19 <xsd:simpleType name="phoneType">
20 <xsd:restriction base="xsd:string">
21 <xsd:pattern value="\\(\\d\{3\}\\)\\d\{3\}-\\d\{4\}"/>
22 </xsd:restriction>
23 </xsd:simpleType>
24 </xsd:schema>'));
25 end;
26 /
PL/SQL procedure successfully completed.
SQL> insert into customer
2 values (XMLTYPE('<Customer><NAME>Steve Joes</NAME><EMAIL>[email protected]</EMAIL><ADDRESS
Somewhere, Sometown, RedWood Shores, California</ADDRESS><PHONE>6505678546</PHONE><DESCRIPTION>Hes the man</DESCRIPTION></Customer>').CreateSchemaBasedXML('http://localhost:8085/public/customer_simpl
e_ann.xsd'))
3 /
1 row created.
SQL> -
Can't insert line into a table
Hi every, I got a problem which is simple for you.
In se16 when I want to insert a line of a table, from the second line it dosen't allow me to insert with an error message: data record exists already with the key indicated. What's that?
Thanks!Hi!
I can imagine it like that, you have to append a new key column into your table:
1st key field: LANGUAGE
2nd key field: LINE_COUNTER
So you can enter into the table entries like these:
EN 0001
EN 0002
EN 0003
and so on...
In a table it is not allowed to have 2 lines with the same key.
Regards
Tamá -
How can I insert data in different table dynamically?
I have one requirement ,In these I have transaction table in which payLoad contain data like employee record,PO record,SO record in XML format.Now I have transfer the data from transaction table to particular table(Emp,SO,PO) dynamical ? how can I do it.. Give me your suggestion guys?? Thanks in Advance
Hello,
Still no luck.I am surely doing silly mistakes.Anyway,Here are my workings-
1> student_mst (id(pk),studentname) and student_guard_mst(id(fk),guardianname)
2> created EO from both of the tables,made id in both EO as DBSequence and an association was also generated.
3> i made that association composite by clicking the checkbox
4> i created 2 VO from 2 EO.
5> put those VO in Application Module.
6> dragged and dropped 2 VO on my jspx page and dropped them as ADF Form.
Now what to do please? -
Can we insert data directly in standard table
hi
how can we insert data in standard table directly.
pls reply urgently.Hi sapna yes u can insert data to the SAP tables, as shown below...
use the table mara in the place of m
REPORT ZTEST_INSERT.
TABLES: <m>.
DATA: wa_m TYPE <m>.
wa_m-ernam = 'ZTEST'.
insert into <m> VALUES wa_m.
if sy-subrc = 0.
WRITE / 'Records inserted Successfully'.
ENDIF.
reward if usefull,
Vishnu. R
Edited by: vishnu ramanathan on Sep 18, 2008 2:17 PM -
Can't insert into nested table
I can't inserted into a nested table and my SQL is listed below.
SQL> CREATE TYPE naming_t AS OBJECT (name VARCHAR2(30), alias VARCHAR2(30)) NOT FINAL;
2 /
Type created.
SQL> CREATE TYPE terminal_t;
2 /
Type created.
SQL> CREATE TYPE terminal_t_nt AS TABLE OF REF terminal_t;
2 /
Type created.
SQL> CREATE TYPE connectivitynode_t UNDER naming_t (terminals terminal_t_nt) NOT FINAL;
2 /
Type created.
SQL> CREATE TYPE connectivitynode_t_nt AS TABLE OF REF connectivitynode_t;
2 /
Type created.
SQL> CREATE TYPE terminal_t UNDER naming_t (connectivitynodes connectivitynode_t_nt) NOT FINAL;
2 /
Type created.
SQL>
SQL> CREATE TABLE naming_tb (name VARCHAR2(30), alias VARCHAR2(30));
Table created.
SQL> CREATE TABLE connectivitynode_tb (name VARCHAR2(30), terminals terminal_t_nt) NESTED TABLE terminals STORE AS terminals_tb;
Table created.
SQL> CREATE TABLE terminal_tb (name VARCHAR2(30), connectivitynodes connectivitynode_t_nt) NESTED TABLE connectivitynodes STORE AS connectivitynodes_tb;
Table created.
SQL>
SQL> INSERT INTO naming_tb (name) VALUES ('AP1.132.B/C.T1');
1 row created.
SQL> INSERT INTO terminal_tb (name) VALUES ('AP1.132.B/C.T1');
1 row created.
SQL> INSERT INTO naming_tb (name) VALUES ('AP1.132.B/C.T2');
1 row created.
SQL> INSERT INTO terminal_tb (name) VALUES ('AP1.132.B/C.T2');
1 row created.
SQL>
SQL> INSERT INTO naming_tb (name) VALUES ('AP1.132.B/C.N1');
1 row created.
SQL> INSERT INTO connectivitynode_tb (name) VALUES ('AP1.132.B/C.N1');
1 row created.
SQL> INSERT INTO TABLE (SELECT terminals FROM connectivitynode_tb WHERE name='AP1.132.B/C.N1') SELECT REF(p) FROM terminal WHERE p.name='AP1.132.B/C.T1' OR p.name='AP1.132.B/C.T2';
INSERT INTO TABLE (SELECT terminals FROM connectivitynode_tb WHERE name='AP1.132.B/C.N1') SELECT REF(p) FROM terminal WHERE p.name='AP1.132.B/C.T1' OR p.name='AP1.132.B/C.T2'
ERROR at line 1:
ORA-00942: table or view does not existI think you dont have the table terminal referred in following select statement
SELECT REF(p) FROM terminal WHERE p.name='AP1.132.B/C.T1' OR p.name='AP1.132.B/C.T2';
Chandar -
How to create XMLTYPE View from the XMLType table
Hi:
I have a large XML file and inserted to the XMLTYPE table
For the XQUERY purpose I would like to create XMLView of the table.
The examples I got from Oracle to create XML view are for small files.
Can some one help me how to create XMLType VIEW for large XML Files ( 20,000 lines )?
Ali_2Have a look at the examples given on XMLType Views (based on relational tables) or standard views (based on XMLType storage) in the FAQ url located on the main page of this forum site regarding XMLDB.
-
Inserting rows in 2 tables using a single query
Can we insert values in two tables using a single INSERT query?
Yes we can insert data in multiple tables using (Multiple insert statement (oracle 9i New Feature))in a single statement.
ex:
INSERT ALL
INTO sal_history VALUES(empid,hiredate,sal)
INTO mgr_history VALUES(empid,mgr,sysdate)
SELECT employee_id EMPID, hire_date HIREDATE, salary SAL, manager_id MGR
FROM employees;
sncr
Naresh -
Insert data into nested tables
Hi,
Can someone please advice how can I insert data into nested tables using APEX.
I have a table "employee" and a column addresses of type address_table_type object which has address1, address2, address3 columns. I want to create form in APEX that will collect address1, address2, address3. I wonder how to do this? should the item be based in database item? if yes then how can I point to the column of address_table_type
Thanks
--AaliCan you post your tabB type, sample data, and your exact insert statement?
Is it overwriting or not commiting the inserts?
Have you traced your session to see what is happening?
Maybe you are looking for
-
When I right click on a link "Open link in new tab" since a few days, it "jumps over" the tab to the right and opens in the tab next to that. How can I change this back to opening in the tab next to the page from which I opened as it used to be?
-
Problem in loading secondary swf
Hi, I am trying load a font as swf for IOS application.i tried load to it from both application directory and application storage directory.but it always throws the following error. Fast debuging mode everything works fine. Air Sdk 3.8 Flash Builder
-
Third party Procurement/Sales
Can anybody please explain me third party/sales/procurement? Amit
-
Cancel or delete partially downloaded rental movie on iPad... how?
I have a partially downloaded rental movie on my iPad in iTunes which I would like to cancel. I have searched high and low, and it seems the only way I can do this is to connect to a computer which is not possible for me at this time. I was wondering
-
Problem loading web sites, but only if they are not in the tabs or navigation bar
First, sorry for my English :( I have trouble since 2-3 weeks now when I want to open a new page. I can use my tabs (Gmail, Facebook, etc) or use the addresses that I have in my navigation history. But I'm not able to do much else. If I type an addre