将 FIXED 参数与外部表一起使用时,我收到“文件末尾的部分记录”错误。
我正在使用 SQL Developer,Oracle 11g XE。
-------
foo.dat - Field lengths: fname=7;lname=8;year=4
-------
Alvin Tolliver1976
KennethBaer 1963
Mary Dube 1973
这是表的 DDL:
CREATE TABLE emp_load (
first_name CHAR(7)
, last_name CHAR(8)
, year_of_birth CHAR(4)
)
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY ext_tab_dir
ACCESS PARAMETERS (
RECORDS FIXED 20 FIELDS (
first_name CHAR(7)
, last_name CHAR(8)
, year_of_birth CHAR(4)
)
)
LOCATION ('foo.dat'));
正在创建表 emp_load,但 select 语句失败并显示以下错误消息。执行时的错误消息select * from emp_load
:
ORA-29913: error in executing ODCIEXTTABLEFETCH callout
ORA-29400: data cartridge error
KUP-04018: <b>partial record at end of file C:\oracle\foo.dat</b>
29913. 00000 - "error in executing %s callout"
*Cause: The execution of the specified callout caused an error.
*Action: Examine the error messages take appropriate action.
它唯一有效的时候是我制作 foo.dat 1 行(如下所示)并将 FIXED 长度更改为 19-
Alvin Tolliver1976KennethBaer 1963Mary Dube 1973
这似乎表明我在换行符方面做错了,但我不知道是什么。
任何帮助,将不胜感激。提前致谢!