On Wed, Nov 13, 2002 at 10:15:18AM -0500, Wysocki, James (J.D.) wrote:
> Hi,
>
> I'm having a problem inserting a row into my database with a CLOB column.
> My database version is Oracle 8.1.7. I can get it to work as long as my
> CLOB contains < 4948 bytes. However, if it is >= 4948, I get an Oracle
> error ORA-03113 "end-of-file on communication channel".
>
> I'm using the following statement to bind my variable to my insert statement:
> $sth->bind_param(2, $file_text);
>
> I have the feeling that I should be doing something like
> "$sth->bind_param(2, $file_text, {TYPE=>SQL_???? );" but I can't find the
> correct TYPE.
You're on the right track. Check the docs for DBD::Oracle, under handling
LOBs. You need to import DBD::Oracle's type constants, and then specify
the type as ORA_CLOB. The documentation has examples.
Ronald