We have a UTF8 Oracle 9i database running on Solaris, 
and I'm trying to select data from a CLOB column that 
contains extended characters. My perl program is running
on a Win2K machine with build 663 of ActiveState perl
and the Oracle 9i client.

I believe I have the environment and registry settings
correct for UTF8. When the program tries to select UTF8
data from this column, I get ORA-01406 errors when
executing fetchall_arrayref.

I have seen references to modifying oci8.c, but this is
beyond my expertise. I cannot even find this file on my
system (is *that* the problem?) Is there a better solution, 
or can someone point me in the correct direction for oci8.c? 

I've included a test program that duplicates this problem 
in case there's something I'm overlooking.

Thanks.

-- Scott


# Connect, with LongTruncOK set to 0, LongReadLen to 500000.

my($sth) = $dbh->prepare( "SELECT reqid, templid, reqdata from " .
 "tblIssMailRequest where status='12'");

if( $DBI::err ) {
 die "GetRequest: prepare failed: " . $DBI::errstr };

$sth->execute();

if( $DBI::err ) {
 die "GetRequest: execute failed: " . $DBI::errstr }

$raf = $sth->fetchall_arrayref(
 { reqid =>1, templid => 1, reqdata =>1 } );

if( $DBI::err ) {
 die $DBI::errstr }

print "OK\n";

exit;


Reply via email to