Question: I am trying to write
a report in file but when the file size exceeds 32kb it starts
breaking and gives me ORA-29285. I am trying to create a report file
through collection, i.e., first I have written everything on
collection and then iterating it and writing it in file. That
is the whole process...
So how do I
find out the cause of this ORA-29285 error?
Answer:
To diagnose any
error, start by using the
oerr utility to display the ORA-29285 error:
ORA-29285 - file write error
Cause - Failed to write
to, flush, or close a file.
Action - Verify that
the file exists, that it is accessible, and that it is open in write
or append mode.
When using the utl_file package, it is
important to remember that the utl_file has a 32k length limit. (And are
you putting carriage returns in the writes?) Review this link on
Writing Oracle BLOB to OS file
which
shows how to write the data out in pieces if it is over 32kb.
The error can be something
as simple as exceeding a maximum line length here, or it could be
not supplying a value for a max line length. It could be that
there is an error in UTL_FILE.FOPEN ( ) like needing one more
parameter specified in the code.