Win a copy of Java Mock Exams (software) this week in the Programmer Certification (OCPJP) forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic

calling stored procedure from java

harry psll
Posts: 17
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
hai all,
I am new this concept , can any one explain me how to call a stored procedure from java.

stored procedure is

create or replace procedure show_emp
name varchar(10);
select emp_name into name from EMP where sal=2000;

this procedure( which does not take any parameters and there exists a row in EMP table with salary 2000 ) was created successfully
but when i am using CallableStatement and calling the procedure , the output is 'No ResultSet is produced'.

code snippet is as follows

CallableStatement cs = con.prepareCall("{call show_emp}");

ResultSet rs=cs.executeQuery();;

please explain me how to call the procedure using prepareCall.

Thanks in advance

Julian Kennedy
Ranch Hand
Posts: 823
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Haripriya,

Your Java code is fine. The problem is with your SP. If you run it directly in Oracle you will find that it returns nothing. This is because you select the name into a variable. Oracle does not directly return data from stored procedures in a ResultSet as, for example, MS SQL Server and Sybase do. I believe that you need to declare a REF CURSOR, return it as an output parameter and then use some proprietory classes from your Oracle JDBC installation to work with it. I've never done it myself but you should be able to find examples by searching this forum.

What are you doing? You are supposed to be reading this tiny ad!
the new thread boost feature brings a LOT of attention to your favorite threads
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!