public inbox for [email protected]  
help / color / mirror / Atom feed
From: Juan Rodrigo Alejandro Burgos Mella <[email protected]>
To: Tzuriel Kahlon <[email protected]>
Cc: [email protected]
Subject: Re: Ecpg fetch issue
Date: Tue, 9 Dec 2025 15:27:41 -0500
Message-ID: <CAHbZ42zwfodkVVHRU_4C4xOVh_hr1Pw0w4FueXj=srEZXwn=ag@mail.gmail.com> (raw)
In-Reply-To: <CANoyZGr5nSNGmWHT1bWY+F_k20WnvOhnKcZk0uq55GEYBAeRgA@mail.gmail.com>
References: <CANoyZGr5nSNGmWHT1bWY+F_k20WnvOhnKcZk0uq55GEYBAeRgA@mail.gmail.com>

Hi
When using ECPG, if you have a simple FETCH, it will do it row by row; the
way to download more than one row at a time is by using data arrays.
In my case, when I want to extract, for example, 100 records at once, I use
the following model:

I define a data array:

EXEC SQL BEGIN DECLARE SECTION;
struct _resultData {
int  int_data1;
char chr_data2[11];
} resultData[100];
EXEC SQL END DECLARE SECTION;

and then in the fetch:

EXEC SQL
FETCH FORWARD 100 cCursor
INTO :resultData;

and the variable sqlca.sqlerrd[2] controls the number of records returned

I hope it helps you

Atte
JRBM


El mar, 9 dic 2025 a las 14:53, Tzuriel Kahlon (<[email protected]>)
escribió:

> Hey all ,
> We are using IBM for cobol and connextint postgres db with ecpg the
> precompiler , problem is when we running cursor against db the prefetch are
> not set correctly and provide one row each time he approach to db and this
> decrease the performance significantly if twvle have 100000 rows it take it
> one by one each run .
> In procob which is the precompiler of Oracle there are option to set the
> prefetch to take in each time it approach the db x number of rows you want
> and this ease the db retrieved and enhance the performance .
> I know that there is a way to change the setting in the application code,
> but I want to eliminate touch any code and configure only the ecpg which is
> the middle between cobol and db.
> There is anyone from you which encountered same issue?
>
>
>
>
>
> *בברכה *
> *צוריאל כחלון *
> 0523851143
>


reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected]
  Subject: Re: Ecpg fetch issue
  In-Reply-To: <CAHbZ42zwfodkVVHRU_4C4xOVh_hr1Pw0w4FueXj=srEZXwn=ag@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox