DBI - error

DBI - error

am 07.11.2006 14:01:20 von sumitrag

------_=_NextPart_001_01C7026C.D258B9BF
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable


Hi,
=20
I am trying to execute the stored procedure using dbh. The procedure=
details are as follows:=20
proc_dequeue( BALID,strRequestXML,strStatus)
=20
where:=20
BALID - Integer,
strRequestXML - XMLType,
strStatus - varchar
=20
The perl script implemented is :=20
=20
my $sth =3D $dbh1->prepare("begin=
proc_dequeue(:BALID,:strRequestXML,:strStatus); end;");
=20
$sth->bind_param_inout(":BALID",\$o_balid,20,\%attr );
$sth->bind_param_inout(":strRequestXML",\$o_requestXML,50000 ,\%attr);
$sth->bind_param_inout(":strStatus",\$o_status,2,\%attr);
=20
and the error message i am getting is :
=20
DBD::Oracle::st execute failed: ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'proc_dequeue'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored (DBD ERROR: OCIStmtExecute) at ./ListenerBalA=
line 32.
DBD::Oracle::st execute failed: ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'proc_dequeue'
=20
Please help me to resolve this problem.
=20
Thanks in advance.
=20
Regards,
Sumitra

=20

=20



==================== =====3D=
==================== =====3D=
==================== =====3D=
==================== =====3D=
==================== ====

Tech Mahindra, formerly Mahindra-British Telecom.
=20
Disclaimer:

This message and the information contained herein is proprietary and=
confidential and subject to the Tech Mahindra policy statement, you may=
review at =3D"http://www.techmahindra.com/Disclaimer.html">http://www. techmahindra.co=
m/Disclaimer.html
externally and =3D"http://tim.techmahindra.com/Disclaimer.html">http://tim. techmahindra.co=
m/Disclaimer.html
internally within Tech Mahindra.

==================== =====3D=
==================== =====3D=
==================== =====3D=
==================== =====3D=
==================== ====
------_=_NextPart_001_01C7026C.D258B9BF--

RE: DBI - error

am 07.11.2006 16:33:06 von Philip.Garrett

Sumitra Gatade wrote:
> Hi,
>=20
> I am trying to execute the stored procedure using dbh. The procedure
> details are as follows:=20
> proc_dequeue( BALID,strRequestXML,strStatus)
>=20
> where:
> BALID - Integer,
> strRequestXML - XMLType,
> strStatus - varchar
>=20
> The perl script implemented is :
>=20
> my $sth =3D $dbh1->prepare("begin
> proc_dequeue(:BALID,:strRequestXML,:strStatus); end;");=20
>=20
> $sth->bind_param_inout(":BALID",\$o_balid,20,\%attr );
> $sth->bind_param_inout(":strRequestXML",\$o_requestXML,50000 ,\%attr);
> $sth->bind_param_inout(":strStatus",\$o_status,2,\%attr);
>=20
> and the error message i am getting is :
>=20
> DBD::Oracle::st execute failed: ORA-06550: line 1, column 7:
> PLS-00306: wrong number or types of arguments in call to
> 'proc_dequeue'=20

You are passing a string to a function that expects XMLType, an opaque
Oracle object type. The XMLType API provides a constructor that takes a
varchar2 argument, so try changing your statement to:

begin proc_dequeue(:BALID,XMLType(:strRequestXML),:strStatus); end;

Regards,
Philip

RE: DBI - error

am 07.11.2006 17:21:03 von Ron.Reidy

This is not a DBI or a perl issue.

Read your error stack and resolve your Oracle issue.

--
Ron Reidy
Lead DBA
Array BioPharma, Inc.

-----Original Message-----
From: Sumitra Gatade [mailto:sumitrag@TechMahindra.com]=20
Sent: Tuesday, November 07, 2006 6:01 AM
To: dbi-users@perl.org
Subject: DBI - error=20


Hi,
=20
I am trying to execute the stored procedure using dbh. The procedure
details are as follows:=20
proc_dequeue( BALID,strRequestXML,strStatus)
=20
where:=20
BALID - Integer,
strRequestXML - XMLType,
strStatus - varchar
=20
The perl script implemented is :=20
=20
my $sth =3D $dbh1->prepare("begin
proc_dequeue(:BALID,:strRequestXML,:strStatus); end;");
=20
$sth->bind_param_inout(":BALID",\$o_balid,20,\%attr );
$sth->bind_param_inout(":strRequestXML",\$o_requestXML,50000 ,\%attr);
$sth->bind_param_inout(":strStatus",\$o_status,2,\%attr);
=20
and the error message i am getting is :
=20
DBD::Oracle::st execute failed: ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'proc_dequeue'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored (DBD ERROR: OCIStmtExecute) at ./ListenerBalA
line 32.
DBD::Oracle::st execute failed: ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'proc_dequeue'
=20
Please help me to resolve this problem.
=20
Thanks in advance.
=20
Regards,
Sumitra

=20

=20



==================== =====3D=
==================== =====3D=
==================== ==
==================== =====3D=
==================== =====3D=
==

Tech Mahindra, formerly Mahindra-British Telecom.
=20
Disclaimer:

This message and the information contained herein is proprietary and
confidential and subject to the Tech Mahindra policy statement, you may
review at href=3D"http://www.techmahindra.com/Disclaimer.html">http:// www.techmahin=
d
ra.com/Disclaimer.html externally and href=3D"http://tim.techmahindra.com/Disclaimer.html">http:// tim.techmahin=
d
ra.com/Disclaimer.html internally within Tech Mahindra.

==================== =====3D=
==================== =====3D=
==================== ==
==================== =====3D=
==================== =====3D=
==

This electronic message transmission is a PRIVATE communication which =
contains
information which may be confidential or privileged. The information is =
intended=20
to be for the use of the individual or entity named above. If you are =
not the=20
intended recipient, please be aware that any disclosure, copying, =
distribution=20
or use of the contents of this information is prohibited. Please notify =
the
sender of the delivery error by replying to this message, or notify us =
by
telephone (877-633-2436, ext. 0), and then delete it from your system.