Connecting to Oracle 11g with perl 5.6.1

2011-10-04 Thread Shobha Deepthi V (sobv)
Hi,

  

I have a perl program that is using Perl 5.6.1 and Oracle 10g. We have
migrated the database from 10g to 11g. I modified ORACLE_HOME to use 11g
database. However, now the program fails with,

 

ORA-06401: NETCMN: invalid driver designator (DBD ERROR:
OCIServerAttach)

 

Anything else that I need to take care of when moving from 10g to 11g?
Should I updated DBI or DBD::Oracle modules? These are the current
versions that am using,

 

DBI: 1.18

DBD::Oracle - 1.07

 

Thanks,

Shobha Deepthi V

 



DBD ERROR: LOB refetch attempted for unsupported statement type

2011-09-02 Thread Shobha Deepthi V (sobv)
Hi,

 

 I am calling a stored procedure that returns ref cursor from perl. But
it fails with the following error,

 

DBD::Oracle::st execute failed:  ( DBD ERROR: LOB refetch attempted for
unsupported statement type )

 

I searched for this error, and all the results show how to read a CLOB
return type but not a ref cursor. Any help is much appreciated.

Here's my perl code,

 

sub run_proc{

...

...

...

$sth->bind_param_inout(":p1", \$args->[0],length($args->[0]), {
ora_type => ORA_CLOB});

$sth->bind_param_inout(":p2", \$args->[1],length($args->[1]));

$sth->bind_param_inout(":p3", \$args->[2],1);

$sth->bind_param_inout(":p4", \$res,0,{ ora_type => ORA_RSET});

$sth->execute();



}

 

And the stored procedure looks like,

 

PROCEDURE p_search_eol_data(

pid_string IN CLOB,

where_clause IN VARCHAR2,

role_flag IN NUMBER,

results OUT searchCursor)

IS

queryString LONG;

BEGIN

queryString := '';/* dynamic query */

  open results for queryString;

 END;

 

 

 

Thanks,

Shobha Deepthi V