I am using sqlloader to load data into a table using this statement:
sqlldr control=aging_ldr.txt userid=uname/pswrd1@database
It works from other machines, and used to work from mine.
But now I am getting this on my machine:
SQL*Loader: Release 126.96.36.199.0 - Production on Thu Aug 1 16:25:29 2002
(c) Copyright 1999 Oracle Corporation. All rights reserved.
SQL*Loader-524: partial record found at end of datafile (aging_ldr.txt)
Please help, Thanks in advance,
Can you post a copy of your control file?
is the name aging_ldr.txt?
or did you misspell and correct name is aging_ldr.ctl?
FROM METALINK Note:1058890.6
SQL*LOADER-524 USING SQL*LOADER
You are running either direct or conventional load and get the following error:
LDR-524: partial record found at end of datafile
This same controlfile and datafile works on Oracle Release 7.3.X - 8.0.4 but
gives LDR-524 on Oracle Release 188.8.131.52 and 8.1.5.
You have tried to look for this error in the manual and there is no description
except for SQL*Loader chapter of the 8.1.5 version of the "Oracle8i Error
Messages" book where this error is documented for the first time.
You may have hit bug:735710
SQL*LOADER reports SQL*LOADER-524:PARTIAL RECORD FOUND AT END OF DATAFILE
when the last record in the data file is missing a linefeed character.
Oracle 8.0.5 introduces new OSD functionality for SQL*Loader that would cause
this problem. The new functionality strictly checks the file format, therefore
LDR-524 is signalled.
LOADER SQLLOADER SQLLDR
ADD A LINEFEED
Ensure that a linefeed exists after the end of the last line in the SQL*Loader
control file, datafile and parfile.
Follow these steps to correct the problem:
1. Using a text editor, binary file editor, or a hex editor, you append
a linefeed character to the end of the last line in the SQL*Loader control
file, datafile and parfile..
i. text editor (eg. vi, ed, edit, etc)
- hit the return / enter key while at the end of the last line in the
ii. binary / hex editor (eg. tr, hexedit, etc)
- append hex value 0A ( decimal value 10 ) to the end of the file
NOTE: Using NOTEPAD will not work.
2. Save the file.
3. Re-run SQL*Loader using the edited files.
SQL*Loader uses the newline / linefeed character to delimit instructions in
the environment files. The lack of this control character causes SQL*Loader to
report a read failure on the last line of the file since it requires the
newline / linefeed character to consider a line read complete.
Click Here to Expand Forum to Full Width