Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Inconsistent behavior between SQL*Plus and Perl DBI
Mladen Gogala <gogala_at_sbcglobal.net> wrote in message news:<pan.2004.07.19.21.07.36.811529_at_sbcglobal.net>...
> On Mon, 19 Jul 2004 13:52:40 -0700, John wrote:
>
> > I'm trying to create a PL/SQL procedure with Perl's DBI module. I
> > first create the query and then use the "do" method to send it to
> > Oracle. However, when I run the script I get the following error:
> >
> > DBD::Oracle::db do failed: ORA-24344: success with compilation error
> > (DBD SUCCESS_WITH_INFO: OCIStmtExecute) ...
>
> If I am allowed to guess, there is a problem with quoting
> in your create statement. You can, of course, take a look at
> USER_ERRORS, which will tell you at which line did the error
> happen and what was the message. If I may ask, why are you trying to
> create procedure from DBI? That's precisely what sqlplus is all about.
> You should only be calling procedure from DBI, not try creating it.
I'm pretty sure there isn't a problem with the statement because if I print it out after creating it and put the printed query into SQL*Plus, the procedure is created and works as expected. It's only when I try to create it from within Perl using $dbh->do( $query ); that things go awry.
The USER_ERRORS table is empty.
I need to ensure that the procedure is made. It makes one less dependency that maintainers will have to know/worry about. Received on Fri Jul 23 2004 - 10:04:27 CDT
![]() |
![]() |