Create an external table based on an XML file
Hi ,
I am trying to create an external table based on XML file .Is it possible to do in OWB ?If Yes .Can someone please let me know the same .
I was successfully able to create an external table based on a flat file which is of the extension *.txt.
I was even able to load an XML file to a normal
table .How do we do it to an external table?
Thanks,
Manjula
Hello Manjula,
Is it possible for you to spare sometime to list down the steps to be followed for creating External Table using flat file *.txt?
I am trying to do it but not getting through it.
Thanks in Advance,
Ripesh
Similar Messages
-
Error in creating an external table referring to a XML file
I've got an XML file and I've tried to create an external table referring to it in this way:
CREATE TABLE mytable
XML_DATA_COLUMN XMLType
ORGANIZATION EXTERNAL
TYPE ORACLE_LOADER DEFAULT DIRECTORY TEST_DIR
ACCESS PARAMETERS ( records delimited BY newline
(XML_DATA_COLUMN LOB) ) LOCATION ( 'myfile.xml' )
where TEST_DIR is the directory where myfile.xml is stored,
but I get this message:
Error at Command Line:3 Column:4
Error report:
SQL Error: ORA-30656: column type not supported on external organized table
30656.0000 - "column type not supported on external organized table"
*Cause: Attempt to create an external organized table with a column
of type LONG, LOB, BFILE, ADT, or VARRAY.
*Action: These column types are not supported, change the DDL.
I want to have in the XML_DATA_COLUMN the content of myfile.xml so as to handle it by using extract and extractvalue functions.
My oracle version is 10gR2 Express Edition
Thanks!The examples in the following thread include an insert, but you could also use the select statement alone without the insert.
http://www.orafaq.com/forum/mv/msg/172162/511897/0/#msg_511897 -
Error while creating oracle external table
I am trying to create an external table with the following syntax. WhenI have executed this statement in my server which running in my machine, it is working fine. Whine I try to run the same statement on different server, it is giving the below error. I have verified the grants on both the schemas, they are simillar.
create table ext_ORGBASIC_CLIENT1(
Serial_Number varchar2(1000),
Add_Edit_Organization varchar2(1000),
Parent_Organization varchar2(1000),
Organization_Code varchar2(1000),
Organization_Name varchar2(1000),
Legal_Entity varchar2(1000),
Active varchar2(1000),
Require_Entity_Use__as_Matchin varchar2(1000),
Pass_On_Tax_On_Tax_To_Customer varchar2(1000),
Allow_Exemption_Without_Receiv varchar2(1000),
Entiy_Use_Code_Association varchar2(1000),
Tax_Calculation_Type_Code varchar2(1000),
Transaction_Type_Code varchar2(1000),
Transaction_Source_Code varchar2(1000),
Taxware_Delivery_Terms_Code varchar2(1000),
Taxware_Mode_of_Transport_Code varchar2(1000),
Debit_Credit_Indicator varchar2(1000),
Discount_Type_Code varchar2(1000),
Place_of_Principal_Negotiation varchar2(1000),
Quantity_Unit_of_Measure_Code varchar2(1000),
Good_Service_Category_Code varchar2(1000),
Tax_Rate_Of_Geo_Code_To_Be_Aut varchar2(1000))
organization external
( type oracle_loader default directory EXT_TAB_DIR
access parameters ( records delimited by newline characterset US7ASCII load
when (serial_number != 'Number' and serial_number != '#')
badfile 'EXT_TAB_DIR':'CLIENT1.bad'
logfile 'EXT_TAB_DIR':'CLIENT1.log'
fields terminated by ',' optionally enclosed by '"' lrtrim missing field values are null
reject rows with all null fields )
location ('C_CLIENT1_TXWR_FS1_TWEBULK_ORGBASIC_1_1_20091126102230_001_CSV.csv') )
parallel reject limit unlimited
while querieng from the table I am getting the below error
select * from ext_orgbasic_client1;
ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-04001: error opening file CLIENT1.log
ORA-06512: at "SYS.ORACLE_LOADER", line 19I try to run the same statement on different server, it is giving the below errorSame OS name & version?
Same Oracle version to 4 decimal places?
Same OS file permissions?
Same OS pathnames? -
How to create a new table based out of old data rows
Hi All,
How to create a new table based out of old data rows. Also how can we find out the DBF for different users in a database?
SaqibNot very clear what you need. I'll try to interpret...
How to create a new table based out of old data rowsIf this means how to create a table from an existing one, then you can do :
SQL> create table <new table> as select * from <old table>;
if you need a subset of rows you can add a where clause.
how can we find out the DBF for different users in a database?Here I need some more clarification. What do you mean exactly ? -
Create multiple external tables from same flat file ?
using oracle 10g
currently create many external tables like so..
CREATE TABLE "XT_UNITS"
"Q1_2012" VARCHAR2(25 BYTE),
"Q2_2012" VARCHAR2(25 BYTE),
"Q3_2012" VARCHAR2(25 BYTE),
"Q4_2012" VARCHAR2(25 BYTE)
ORGANIZATION EXTERNAL
TYPE ORACLE_LOADER DEFAULT DIRECTORY "XE_FILES" ACCESS PARAMETERS ( records delimited BY newline
skip 1 fields terminated BY ',' OPTIONALLY ENCLOSED BY '"' MISSING FIELD VALUES
ARE NULL ) LOCATION ( 'xtunits.csv' ))
is there any way I can use 1 flat file (csv) to populate many external tables ?
maybe by section ?Jay wrote:
using oracle 10g
currently create many external tables like so..
CREATE TABLE "XT_UNITS"
"Q1_2012" VARCHAR2(25 BYTE),
"Q2_2012" VARCHAR2(25 BYTE),
"Q3_2012" VARCHAR2(25 BYTE),
"Q4_2012" VARCHAR2(25 BYTE)
ORGANIZATION EXTERNAL
TYPE ORACLE_LOADER DEFAULT DIRECTORY "XE_FILES" ACCESS PARAMETERS ( records delimited BY newline
skip 1 fields terminated BY ',' OPTIONALLY ENCLOSED BY '"' MISSING FIELD VALUES
ARE NULL ) LOCATION ( 'xtunits.csv' ))
is there any way I can use 1 flat file (csv) to populate many external tables ?
maybe by section ?Not a logical question.
An external table definition relates to one or more files.
You could probably create multiple externable table definitions to access the same file(s), but you may end up with some operating system file locking issues if you're not careful, and to be honest why would you need to do that? -
ORA-0092 error when trying to create an external table
For some reason, I always received the following error whenever I attempt to create an
External table.
ORA-0092:missing or invalid option
This is the code that I am using in SQL Plus:
SQL> create table products (
2 product_no number,
3 description varchar2(100),
4 price varchar2(20)
5 )
6 organization EXTERNAL (
7 type oracle_loader
8 default directory PRODUCT_DIR
9 access parameters
10 ( records delimited by newline
11 badfile 'products.bad'
12 logfile 'products.log'
13 fields terminated by ','
14 )
15 location ('products.csv')
16 )
17 reject ('products.csv')
18 )
19 reject limit unlimited
20 /
organization EXTERNAL (
ERROR at line 6:
ORA-00922: missing or invalid option
This is the statement that I used to create my directory:
CREATE DIRECTORY PRODUCT_DIR AS 'd:\products';
Does that directory have to be an actual physical directory in UNIX for this to work, or
will it be looking for a products folder in the d drive of my Windows NT machine?The directory should exist on the server where Oracle is installed. Since clients can be more than one on various operating
systems, It can not be a directory on the client (since that would not be valid for other clients or even the same user
connecting from a different machine).
Did you install the Standard Edition of Oracle or the Enterprise Edition of Oracle server on your machine?
External Tables option may not be available on Standard Edition.
I have Oracle9i Rel 2 installed on my server and the external tables works fine for me. -
Can we create single External Table for multiple files?
HI,
Can we create External table for multiple files? Could anyone please explain it.
Thanks and regards
Gowtham Sen.to merge 16 files having same structureWell, if files have the same structure, as per the reading of the example from the following documentation, you can create one external table for all your files :
http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14231/tables.htm#i1007480
Nicolas. -
How to move the data of a table from sqlplus to XML file
Hi,
Could you pls guide me how to move the data of a table from sqlplus to XML file.
i want to do it from sqlplus rather than toad.pls help
ThanksOh..I'm in 9i.
Try this out..and let me know.
DECLARE
CTX DBMS_XMLGEN.CTXHANDLE ;
XML CLOB ;
F UTL_FILE.FILE_TYPE;
XMLC VARCHAR2(32767);
BEGIN
CTX := DBMS_XMLGEN.NEWCONTEXT('SELECT * FROM department1 ') ;
XML := DBMS_XMLGEN.GETXML(CTX) ;
XMLC:=TO_CHAR(XML);
SHOW_ENVELOPE(XMLC);
F := UTL_FILE.FOPEN('ATTACH_FILES','DEPT.XML', 'W');
UTL_FILE.PUT_LINE(F,XML);
UTL_FILE.FCLOSE(F);
END ;
Good luck!!!
Bhagat
null -
Create a External Table in Oracle 10g:== ERROR: KUP-01005
Hello.
I have a problem working with external tables, hope someone can help me with this problem. Thanks.
This is the code of the external table
========================
CREATE TABLE SIAFI.RNP_IDS
NUMERO_ID VARCHAR2(30 BYTE),
PRIMER_NOMBRE VARCHAR2(300 BYTE),
SEGUNDO_NOMBRE VARCHAR2(300 BYTE),
APELLIDO_PATERNO VARCHAR2(300 BYTE),
APELLIDO_MATERNO VARCHAR2(300 BYTE),
DEPARTAMENTO VARCHAR2(300 BYTE),
CORRELATIVO VARCHAR2(300 BYTE)
ORGANIZATION EXTERNAL
( TYPE ORACLE_LOADER
DEFAULT DIRECTORY SEG_DIRECTORIO
ACCESS PARAMETERS
( records delimited by NEWLINE
badfile SEG_DIRECTORIO:'censo.bad'
logfile SEG_DIRECTORIO:'censo.log'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' and '"'LDRTRIM
REJECT ROWS WITH ALL NULL FIELDS
(NUMERO_ID VARCHAR(30) NULLIF NUMERO_ID=BLANKS
TERMINATED BY "," OPTIONALLY ENCLOSED BY '"' and '"'LDRTRIM,
PRIMER_NOMBRE VARCHAR(300) NULLIF PRIMER_NOMBRE=BLANKS
TERMINATED BY "," OPTIONALLY ENCLOSED BY '"' and '"'LDRTRIM,
SEGUNDO_NOMBRE VARCHAR(300) NULLIF SEGUNDO_NOMBRE=BLANKS
TERMINATED BY "," OPTIONALLY ENCLOSED BY '"' and '"'LDRTRIM,
APELLIDO_PATERNO VARCHAR(300) NULLIF APELLIDO_PATERNO=BLANKS
TERMINATED BY "," OPTIONALLY ENCLOSED BY '"' and '"'LDRTRIM,
APELLIDO_MATERNO VARCHAR(300) NULLIF APELLIDO_MATERNO=BLANKS
TERMINATED BY "," OPTIONALLY ENCLOSED BY '"' and '"'LDRTRIM,
DEPARTAMENTO VARCHAR(300) NULLIF DEPARTAMENTO=BLANKS
TERMINATED BY "," OPTIONALLY ENCLOSED BY '"' and '"'LDRTRIM,
CORRELATIVO VARCHAR(300) NULLIF CORRELATIVO=BLANKS
TERMINATED BY "," OPTIONALLY ENCLOSED BY '"' and '"'LDRTRIM,
LOCATION (SEG_DIRECTORIO:'censo.txt')
REJECT LIMIT UNLIMITED
NOPARALLEL
NOMONITORING;
When executing the stament select from RNP_IDS* it returns the following error message:
===========================================================
ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-00554: error encountered while parsing access parameters
KUP-01005: syntax error: found "terminated": expecting one of: "and, comma, defaultif, not, nullif, or, )"
KUP-01007: at line 6 column 56
ORA-06512: at "SYS.ORACLE_LOADER", line 19
ORA-06512: at line 1
This is the example of the file I'm using:
==========================
"0","DOUGLAS","AUGUSTO","ABBOTT","","1","3672097"
"0101190600010","MARIA","URBANA","GOMEZ","URBINA","2","1949122"
"0101190600076","ENRIQUETA","","GARCIA","","2","1162025"
"0101190800106","LUCILA","","FLORES","","2","1658013"Hi
Here we go...
I reduced the 300 length of varcahr t o30 for testing purpose...
SQL> CREATE TABLE RNP_IDS
2 (
3 NUMERO_ID VARCHAR2(30),
4 PRIMER_NOMBRE VARCHAR2(30),
5 SEGUNDO_NOMBRE VARCHAR2(30),
6 APELLIDO_PATERNO VARCHAR2(30),
7 APELLIDO_MATERNO VARCHAR2(30),
8 DEPARTAMENTO VARCHAR2(30),
9 CORRELATIVO VARCHAR2(30)
10 )
11 ORGANIZATION EXTERNAL
12 ( TYPE ORACLE_LOADER
13 DEFAULT DIRECTORY LOG
14 ACCESS PARAMETERS
15 ( records delimited by NEWLINE
16 badfile LOG:'censo.bad'
17 logfile LOg:'censo.log'
18 FIELDS TERMINATED BY ','
19 OPTIONALLY ENCLOSED BY '"' and '"'LDRTRIM
20 REJECT ROWS WITH ALL NULL FIELDS
21 (
22 NUMERO_ID ,
23 PRIMER_NOMBRE ,
24 SEGUNDO_NOMBRE ,
25 APELLIDO_PATERNO,
26 APELLIDO_MATERNO ,
27 DEPARTAMENTO,
28 CORRELATIVO
29 )
30 )
31 LOCATION ('sample1.txt')
32 )
33 REJECT LIMIT UNLIMITED
34 NOPARALLEL
35 NOMONITORING;
Table created.
SQL> desc rnp_ids
Name Null? Type
NUMERO_ID VARCHAR2(30)
PRIMER_NOMBRE VARCHAR2(30)
SEGUNDO_NOMBRE VARCHAR2(30)
APELLIDO_PATERNO VARCHAR2(30)
APELLIDO_MATERNO VARCHAR2(30)
DEPARTAMENTO VARCHAR2(30)
CORRELATIVO VARCHAR2(30)
SQL> select numero_id from rnp_ids;
NUMERO_ID
0
0101190600010
0101190600076
0101190800106
- Pavan Kumar N -
How do I create a 'external table' against clob
Hi there,
I have a need, where I will have multiple csv files, which I plan to load it to a temporary table using the 'external table' concept. My issue is that I will have many at the same time and I don't want to create too many tables.
So is there a way I can create tables against clob (which will have ',' separated data.
Basically instead of putting the ',' separated data in a file I want to keep it in CLOB.
Let me know
ThanksYes I understand that. Problem is I will be having lot of data so I need good indexes to process it. That's why I am loading into a permanent temp table.
The issue is I have to load multiple csv files at the same time. So either I have to have multiple external tables defined or I have to single thread.
So I was wondering if there is a way to replace the csv file with CLOB, that will be very useful.
Thanks -
Error in creating the external table?
SQL> create table oldemp (
2 empno number(5),
3 ename varchar2(20))
4 organization external
5 (type oracle_loader
6 default directory emp_dir
7 access parameters
8 (records delimited by newline
9 badfile 'bad_emp'
10 logfile 'log_emp'
11 fields terminated by ','
12 (empno number(5),
13 ename varchar2(20))
14 LOCATION ('c:\EMP1.TXT'))
15 PARALLEL 5
16 REJECT LIMIT 200;
PARALLEL 5
ERROR at line 15:
ORA-30648: missing LOCATION keyword
SQL>error when inserting into the external table.
Following is the error:
SQL> create table oldemp (
2 empno number(5),ename varchar2(20))
3 organization external
4 (type oracle_loader
5 default directory emp_dir1
6 access parameters
7 (records delimited by newline
8 badfile 'bad_emp'
9 logfile 'log_emp'
10 fields terminated by ','
11 (empno number(5),
12 ename varchar2(20)))
13 LOCATION('EMP2.lst'))
14 PARALLEL 5
15 REJECT LIMIT 200;
Table created.
SQL> insert into oldemp values(100,'raj');
insert into oldemp values(100,'raj')
ERROR at line 1:
ORA-30657: operation not supported on external organized table -
Hello,
I was wondering if it's possible have a matrix which shows total credits by month and have drill-down groupings to display the invoice numbers for each credit. Then, once the drill-down is expanded for a particular month, be able to click on the invoice
number and have another table under the matrix display the details of the invoice.
I don't really want a drill-through because that opens a different report in the window, what I want to be able to do is stay on the main report. I also don't want to drill-into the invoice details from the matrix as that expands the matrix out and
makes it unruly and ugly. I've been playing with subreports but not able to get what I want out of it.
I hope this makes sense - is there a way to do this in SSRS?
Thanks!!Hi AvenueStuart,
After testing the issue in my environment, we can refer to the steps below to work around the issue:
Create a new table with the details of the invoice under the matrix.
Add a parameter named invoice which get available values from the invoice field in the dataset.
Right-click the [Sum(invoice)] cell to add an action with “Go to report” option, and specify the same report with the parameter below:
Name: invoice
Value: [invoice]
Right-click the table to add a filter in the table:
Expression: [invoice]
Operator: =
Value: [@invoice]
If there are any misunderstanding, please elaborate the issue for further investigation.
Thanks,
Katherine Xiong
Katherine Xiong
TechNet Community Support -
How to create an internal table in a Report from File of FTP Server.
Hi All,
I want to create an internal table in a Report program. But the problem is I have to download two latest files from FTP server.
Now, based in those file I have to design internal tables in current program. The problem is the program from which these files are being generated has options to display some fields in the output. Hence, the columns of these files becomes dynamic due to which I am not able to design the internal table in my current program...Please Help.
Regards & Thanks.
Prashant.Hi,
Or you can use the RTTS classes...
Plenty of examples over here.
one external link: http://help-abap.zevolving.com/2008/09/dynamic-internal-table-creation/
Kr,
Manu. -
Load Multiple Tables (schemas) from same XML file
Hi,
This is first time i am working XML files.
I have one XML file with two tables (schema). I need to load those two tables into two different Target tables.
This is the startegy to choose tables.
<Entry type="full"> --Table 1
<Entry type="short">--Table 2
I am try to find the tables like this using condition split (Type == "Full" ) but tables are not splitting as expected, is am i going with wrong approach??
Can anyone suggest me to process multiples tables from same XML file??Hi Naveen,
After the issue in my environment, the package works well that the data in the XML file load to two destination tables based on one column values. The screenshot is for your reference:
To troubleshoot this issue, could you please check the values in the type column? Verify the values have exactly the same characters, case sensitivity. It seems that you haven’t write correct values in the Conditional Split Transformation. They should be like
below:
If there are any other questions, please feel free to ask.
Thanks,
Katherine Xiong
If you have any feedback on our support, please click
here.
Katherine Xiong
TechNet Community Support -
How to drop external table together with the linked file
Hi,
I am running 10g and using the external table feature to move data between two databases. Now the procedure I am using has to make sure, that on the target db the external tables created on the previous run are not existing.
As far I know the statement
DROP TABLE <EXTERNAL TABLE NAME>; does not remove the file.
How to achieve the goal?
Thanks!Can you use the UTL_FILE.FRemove function to delete the underlying file? That seems like the simplest solution. Assuming, of course, that you have the appropriate privileges to do so.
Justin
Of course, I'd generally question why you're using external tables and flat files to move data between databases rather than database links, but I assume you have valid reasons for that...
Message was edited by:
Justin Cave
Maybe you are looking for
-
How do you remove items from the assets panel that are duplicated?
How do you remove items from the assets panel that are duplicated?
-
For example on Find-A-Grave when filling in the form to add a memorial there are several blocks that you fill in including location. For some blocks you type in the information and others are pick one of the preset selections. I generally hit the tab
-
HT2736 How do I find out the status of a iTunes card I gifted to another person via email?
I used the option in the iTunes Store to buy a gift card for a friend. I did this three days ago, and the email with the code has not yet arrived, nor have I received a confirmation from iTunes. When I look at the history in the Store, there is no
-
hi any body help me, How to clone using rman in Oracle 10g R2 RAC environment.
-
Apple Color changes shot numbers in a reconform?
Hi all, I've been wrestling with sending a project between FCP and Color. It's my first time out, so I had a few things on the timeline that may have been problematic. At any rate, the "Send to FCP" has been failing, so I have been jettisoning pote