Dear All,
I have followed the required steps to create external table, but when I
select it, it failed with these errors:
(I have tried it on both Win2K and Linux SuSE 7.2, with path format
modification, of cource. The errors is exactly the same).
SQL> select * from xrefxt;
select * from xrefxt
*
ERROR at line 1:
ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-04043: table column not found in external source: PROGR
ORA-06512: at "SYS.ORACLE_LOADER", line 14
ORA-06512: at line 1
I run this script (cre_xref_xt.sql) for preparing external table;
==========BOF==========
/* cre_xref_xt.sql */
SET ECHO ON
/
CONNECT / AS SYSDBA
/
CREATE USER dbabni IDENTIFIED BY dbabni
DEFAULT TABLESPACE tools
TEMPORARY TABLESPACE temp
QUOTA UNLIMITED ON tools
QUOTA UNLIMITED ON temp
/
GRANT connect, create session to dbabni
/
CREATE OR REPLACE DIRECTORY dat_dir AS 'D:\DBA\tool\data'
/
CREATE OR REPLACE DIRECTORY log_dir AS 'D:\DBA\tool\log'
/
CREATE OR REPLACE DIRECTORY bad_dir AS 'D:\DBA\tool\bad'
/
GRANT READ ON DIRECTORY dat_dir TO dbabni
/
GRANT WRITE ON DIRECTORY log_dir TO dbabni
/
GRANT WRITE ON DIRECTORY bad_dir TO dbabni
/
CONNECT dbabni/dbabni
/
DROP TABLE xrefxt
/
CREATE TABLE xrefxt
(progr VARCHAR2(80),
filename VARCHAR2(80),
line_nbr NUMBER(5),
specifier VARCHAR2(20),
value1 VARCHAR2(40),
value2 VARCHAR2(40),
value3 VARCHAR2(40),
value4 VARCHAR2(40),
value5 VARCHAR2(40)
)
ORGANIZATION EXTERNAL
(
TYPE ORACLE_LOADER
DEFAULT DIRECTORY dat_dir
ACCESS PARAMETERS
(records delimited by newline
badfile bad_dir:'xrefxt%a_%p.bad'
logfile log_dir:'xrefxt%a_%p.log'
fields terminated by ' '
missing field values are null
(value1, value2, value3, value4, value5)
)
LOCATION ('xref.dat')
)
PARALLEL
REJECT LIMIT UNLIMITED
/
======EOF=======
The sample of data in "xref.dat" is as follows: (it is a log file during my
application compilation process)
=====BOF========
trbrw002.p trbrw002.p 1 COMPILE trbrw002.p
trbrw002.p trbrw002.p 1 CPINTERNAL iso8859-1
trbrw002.p trbrw002.p 1 COMPILE trbrw002.p
trbrw002.p trbrw002.p 1 CPINTERNAL iso8859-1
trbrw002.p trbrw002.p 1 COMPILE trbrw002.p
trbrw002.p trbrw002.p 1 CPINTERNAL iso8859-1
====EOF=========
Any ideas what wrong with steps I did or is it a known bug?
Thank you very much for any helps.
Sincerely Yours,
Yustiono
Oracle LazyDBA home page