× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



On 7/18/2024 3:09 PM, stefan@xxxxxxxxxx wrote:

Just started playing with result sets in rpg.

I declare a ds dbt dim(10 000);

Then I declare, prepare ,open and fetch from a cursor.

When reaching eof I do:

exec sql
set result sets array :dbt
for :rowsreturned rows
;

How to deal with a situation when I get more than 10 000 rows? Previous fetch is then overlaid with new data ....

Hi Stefan,
Using a DS is one way to return a smallish result set.
Another way is to open a cursor and leave it open:

exec sql declare myCursor cursor for...
exec sql open myCursor;
exec sql set result sets cursor myCursor;
*inlr = *on;

...the CREATE PROCEDURE shouldn't need to change:
CREATE PROCEDURE myProcedure (
IN...)
DYNAMIC RESULT SETS 1
LANGUAGE RPGLE...

https://www.ibm.com/docs/en/i/7.4?topic=statements-set-result-sets


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.