ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Calling oracle stored procedure error

Post new topic  Reply to topic
 Calling oracle stored procedure error « View previous topic :: View next topic » 
Author Message
youssef
PostPosted: Wed Sep 13, 2006 5:59 am    Post subject: Calling oracle stored procedure error Reply with quote

Novice

Joined: 09 Sep 2006
Posts: 12

Does anybody know how to resovle this error when calling oracle stored procedure ?
The error i get is .
[DataDirect][ODBC Oracle driver][Oracle]ORA-06550: line 1, column 18: PLS-00302: component 'INTERNET_BANKING2' must be declared ORA-06550: line 1, column 8: PL/SQL: Statement ignored

On the database
I have oracle stored procedure HB_CUSTOMERS in schema CUSTOMERS under the package INTERNET_BANKING2

On ESQL file i have declared it as
CREATE PROCEDURE HB_CUSTOMERS(IN p_in INTEGER,OUT p_out INTEGER)
LANGUAGE DATABASE
EXTERNAL NAME "CUSTOMERS.Internet_Banking2.HB_CUSTOMERS";

_________________
Regards,
Youssef
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Sun Sep 17, 2006 7:15 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

Looking at the message I would have to say your package is not accessible in oracle. Did you check for the execution rights to the package to be granted to the user defined for odbc?
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
youssef
PostPosted: Tue Sep 19, 2006 5:55 am    Post subject: Reply with quote

Novice

Joined: 09 Sep 2006
Posts: 12

It turned out to be that oracle have an ugly feature (or call it bug) that causes such weried error. What the Message broker does (actually it is the ODBC driver) is to issue PL/SQL statement like this

SCHEMA_NAME.PACKAGE_NAME.PROCEDURE_NAME(...)

This goes fine unless you have a table whos name is the same as the schema
eg SCHEMA_NAME. In such a case oracle will cause that error (which is PL/SQL compilation error) claiming that name just after the referenced schema is a component that is not declared (in this case PACKAGE_NAME)

This issue was raise as a bug late in oracle version 8 but oracle rejected the bug.

Bottomline, don't create table with the same name as the schema owner.
_________________
Regards,
Youssef
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Calling oracle stored procedure error
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.