Hey Michael,

Thanks for the reply!

So, I'd like to update this after further investigation. It would seem that
this is related to binding params and the ORA_CLOB value.

When I execute an insert passing attributes:

{ora_type => ORA_CLOB} it fails with the Lob Refetch error. However, if I
remove this, it works fine. 

I guess, yes, it would be time to update the perl... However, the code at
its oldest is also 2004 so, I'm worried about backward compatibility issues.
It's a rabbit hole I don't have time to go down. It would require
recompiling all the other libs we use under the new perl plus mod_perl plus
apache.. Just for one module??? 

In any case, The documentation says that to update multiple and or large
CLOB fields I need to pass these parameters, however how large is large? I
haven't even delved into the update part of the equation.

Thanks,
Carl.

Carl Furst
CMS Developer
MLB Advanced Media
212-485-4502 (W)
917-837-4558(M)
(505) MLB-CMS-5(CMS General Phone)
aim: furstmlb
o/~ What a difference a byte makes... o/~

-----Original Message-----
From: Michael Ludwig [mailto:mil...@gmx.de] 
Sent: Monday, December 20, 2010 6:25 PM
To: dbi-users@perl.org
Subject: Re: DBD::Oracle, 10g Lob Refetch problem

Moin Carl,

Furst, Carl schrieb am 20.12.2010 um 15:17 (-0500):
> 
> I just built DBD::Oracle 1.26 on Solaris SPARC 2.10 using perl 5.8.5
> 32 bit against client 10.0.2.4 

Perl 5.8.5 is from mid-2004, so six and a half years old. Time to
upgrade to 5.8.9. (And then on to 5.10.1, and 5.12.2, if you want.
If you deal with Unicode, the newer, the better.)

>       DBD::Oracle::st execute failed: ORA-00903: invalid table name (DBD
> ERROR: OCIStmtExecute/LOB refetch)
> 
> We think it's the LOB refetch that's causing the issue. 

But it says "invalid table name". What does your SQL look like?

> 1) do we need an actual Oracle server to build the DBD

No.

> if so what libs would we need to link against?

You need the Oracle client lib. The easiest should be to pick the Oracle
Instant Client, which you can find by doing a web search. The Basic or
even Basic Lite should do for your purposes. SQL*Plus is offered, too,
so I'd install that as well.

> 2) Has anyone else experienced this; building again lib32 client libs.

Experienced what exactly?

> 3) What role does oraperl have in all this? If oraperl fails to
> compile, is that a blocker for DBD?

It's all in the docs, straight at the top:

  Oraperl is an extension to Perl which allows access to Oracle
  databases.

  The original oraperl was a Perl 4 binary with Oracle OCI
  compiled into it. The Perl 5 Oraperl module described here is
  distributed with DBD::Oracle (a database driver what operates
  within DBI) and adds an extra layer over DBI method calls. The
  Oraperl module should only be used to allow existing Perl 4
  oraperl scripts to run with minimal changes; any new development
  should use DBI directly.

http://search.cpan.org/~timb/DBD-Oracle-1.16/Oraperl.pm

Hope this helps!

Best,
-- 
Michael Ludwig

Attachment: smime.p7s
Description: S/MIME cryptographic signature





**********************************************************

MLB.com: Where Baseball is Always On

Reply via email to