On Fri, Oct 25, 2002 at 06:26:29AM +1000, Steve Baldwin wrote:
> Thanks Chris,
> 
> I have tried this on DBI 1.30 and DBD::Oracle 1.12, but see exactly the same 
> behaviour.  I suspect it is a DBD::Oracle thing coz as far as I know, named 
> bind variables (as opposed to ?) is an Oracle thing.
> 
> I have ended up doing the same as you did, but I hate ugly kludges, and was 
> hoping someone could enlighten me with "you just need to set the xxx 
> attribute on your database handle and it bypasses bind variable scanning".

Not implemented yet, but patched welcome :)

(I _really_ hope to do some more DBD::Oracle work soon and could
add in such an attribute fairly easily.)

Tim.

> If there's no such mechanism already, how about an enhancement ???  I suppose 
> I could get really brave and look in the .xs file, but before I do that, I 
> guess I'd like to hear some confirmation (one way or another) that that's the 
> only other solution.
> 
> Thanks for the reply,
> 
> Steve
> 
> On Friday 25 October 2002 06:03, Sarnowski, Chris wrote:
> > I ran into a similar problem with the '?' character with an earlier version
> > of DBD:Oracle (possibly 1.03, maybe older) a couple of years ago. My (ugly)
> > workaround was to invoke SQLPlus on a pipe and have it compile the package.
> >
> >
> >     open SQLSESSION, "|\$ORACLE_HOME/bin/sqlplus -S ";
> >     print SQLSESSION "${oracleUser}/${oraclePassword}\@$host\n";
> >     print SQLSESSION "set scan off\n";
> >     print SQLSESSION $packageText;
> >     print SQLSESSION "/\n";
> >     print SQLSESSION "\nexit\n";
> >     print SQLSESSION "\n";
> >     close (SQLSESSION);
> >
> > Or you could upgrade your DBI and DBD.
> >
> > -Chris
> >
> > > -----Original Message-----
> > > From: Steve Baldwin [mailto:stbaldwin@;multiservice.com]
> > > Sent: Thursday, October 24, 2002 3:22 PM
> > > To: [EMAIL PROTECTED]
> > > Subject: Fwd: Creating wrapped PL/SQL packages using DBI
> > >
> > >
> > > I didn't hear any response on this.  Can anyone please help me ?
> > >
> > > Thanks,
> > >
> > > Steve
> > >
> > > ----------  Forwarded Message  ----------
> > >
> > > Subject: Creating wrapped PL/SQL packages using DBI
> > > Date: Tue, 22 Oct 2002 11:25:24 +1000
> > > From: Steve Baldwin <[EMAIL PROTECTED]>
> > > To: [EMAIL PROTECTED]
> > >
> > > I'm writing a perl script that reads the source of a PL/SQL
> > > package from a
> > > file, pre-processes it, optionally wraps it (using Oracle's
> > > wrap utility),
> > > and then executes it in the DB.
> > >
> > > If I don't wrap the file, everything works fine.  However, if
> > > I do wrap it, I
> > > get the following error from the prepare method ...
> > >
> > > Can't mix placeholder styles (:foo/:1) at
> > > /usr/local/lib/perl5/site_perl/5.6.0/i386-sco/DBD/Oracle.pm line 293
> > >
> > > I somehow need DBD::Oracle to not scan the statement for bind
> > > variables, coz
> > > there aren't any.
> > >
> > > We're using DBI 1.14, DBD::Oracle 1.03, Oracle 7.3.3 (in case
> > > that makes any
> > > difference).
> > >
> > > Any clues ???
> > >
> > > Steve
> > >
> > > P.S.
> > > Here is a subset of the wrapped code ...
> > >
> > > create or replace package sb_test_p wrapped
> > > 0
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > abcd
> > > 9
> > > 200f000
> > > 1
> > > 4
> > > 0
> > > 6
> > > 7 PACKAGE:
> > > 9 SB_TEST_P:
> > > 8 FUNCTION:
> > > 2 F1:
> > > 6 RETURN:
> > > 6 NUMBER:
> > > 0
> > >
> > > 0
> > > 0
> > > 12
> > > 2
> > > 0 a0 1d 97 a0 8d a0 b4
> > > a0 2c 6a a0 :2 aa 59 58 17
> > > b5
> > > 12
> > > 2
> > > 0 3 7 8 10 14 21 25
> > > 26 2a 2e 32 36 38 3a 3d
> > > 40 47
> > > 12
> > > 2
> > > 0 :2 1 9 2 b e 0 15
> > >
> > > :2 2 5 :6 1
> > >
> > > 12
> > > 2
> > > 0 :3 1 :3 2 0 :3 2 3 :6 1
> > > 49
> > > 2
> > >
> > > :3 0 1 :4 0 2 :6 0 1 3 :3 0
> > >
> > > 4 :a 0 a 2 5 :4 0 6 :3 0
> > > 7
> > >
> > > -------------------------------------------------------
> >
> > LEGAL NOTICE:
> > Unless expressly stated otherwise, this message is confidential and may be
> > privileged. It is intended for the addressee(s) only. Access to this e-mail
> > by anyone else is unauthorized. If you are not an addressee, any disclosure
> > or copying of the contents or any action taken (or not taken) in reliance
> > on it is unauthorized and may be unlawful. If you are not an addressee,
> > please inform the sender immediately.
> 

Reply via email to