PGresult and for-cycle

Поиск
Список
Период
Сортировка
От Gianluigi Roveda
Тема PGresult and for-cycle
Дата
Msg-id 3B389ACD.C0824543@omega.it
обсуждение исходный текст
Список pgsql-interfaces
I develop this code:
PQclear(sol);psqlDisconnettiDB(DB);
ris=(abbonamenti_t **) calloc(nabb,sizeof(abbonamenti_t *));sol2=(PGresult **) calloc(nabb,sizeof(PGresult *));
for (i=0;i<nabb;i++){   ris[i]=(abbonamenti_t *) calloc(1,sizeof(abbonamenti_t));
   st1=astrcpy("SELECT rivabbval.PrezzoLit, rivabbval.PrezzoEur,
rivabbval.DataInizioValidita, rivabbval.DataFineValidita,
rivtipabb.Descrizione FROM rivabbval, rivtipabb WHERE
rivabbval.IDrav=");   st2=astrcat(st1,key[i]);   free(st1);   st1=astrcat(st2," and rivtipabb.IDrta=rivabbval.IDrta;");
 free(st2);
 
   DB=(PGconn *) psqlConnettiDB0("mulino_db");   psqlBeginTransaction(DB);   psqlLockTable(DB,"rivvalarr","ACCESS
EXCLUSIVEMODE");
 
{FILE *E; E=fopen("problem.txt","a");fprintf(E,"BOOM 2-1 SQL abb
-%s-\n",st1);fclose(E);}
   sol2[i]=PQexec(DB,st1);
   free(st1);
/***/   ris[i]->lire_abb=atof(PQgetvalue(sol2[i],i,0));   ris[i]->euro_abb=atof(PQgetvalue(sol2[i],i,1));
ris[i]->inizio_abb=astrcpy(PQgetvalue(sol2[i],i,2));  ris[i]->fine_abb=astrcpy(PQgetvalue(sol2[i],i,3));
ris[i]->abbo=astrcpy(PQgetvalue(sol2[i],i,4));
   PQclear(sol2[i]);   psqlDisconnettiDB(DB);}

the 1st loop is OK, the 2nd produces a core and stops at /***/.
Why ?

Could you help me ?
-----------------------------------
Gianluigi  Roveda
E-mail: roveda@omega.it

Omega Generation S.R.L.
Via Montebello, 2  40121  Bologna
TEL   051/4210311
FAX  051/4211039




В списке pgsql-interfaces по дате отправления:

Предыдущее
От: "Louisa Thue"
Дата:
Сообщение: Question
Следующее
От: Michael Davis
Дата:
Сообщение: RE: Question