Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Retrieving a result set from a DB2 stored procedure

Status
Not open for further replies.

kcisam

Programmer
Sep 18, 2009
2
US
I'm calling a DB2 stored procedure using a DBLOOKUP. The call is succeeding but its only returning the output parameters. How do I retrieve the result set?

DBLOOKUP("Call db2_proc(var1,var2,?,?);", ConnectString)
 
don't think you can do it that way. the stored proc needs to be an input card.

You could pass the vairable into a second map which will execute the proc and let that map complete your processing or try echoing the 2nd maps results back to the first map.

 
I tried with the stored proc call in an input card and it didn't return the result set, only the output parameters. The trace shows the call being executed and succeeding.
This is the database command on the input card.
-DBTYPE DB2 -SOURCE xxx -USER xxx -PASSWORD xxx -STMT CALL DBL.SP2 ('55555','AAA','PPP', ,?,?,?,?)

I also tried in the output card using GET...same thing got output params no result set.

This is very weird since it works fine when returning multiple rows from a DB2 query.

I found this in the DB2 adapter help under limitations:
"Using stored procedures to access adapter commands and return values from stored functions is not supported."

So maybe getting DB2 stored procs with result sets just isnt't supported?

BTW, I'm using 8.2.0.4 interim fix 3

Thanks.
 
add the stored procedure to the DBID, then in DBID define the select statment to call it like...

db2_proc(var1,var2,?,?)

Build your type tree and next your maps. You NEED to pass your variables to a run map. The runmap will use the results as input.

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top