problem with multiple result sets - Mailing list pgsql-odbc

From Dr.Graef@t-online.de (Albert Graef)
Subject problem with multiple result sets
Date
Msg-id 3F69D202.2050109@t-online.de
Whole thread Raw
Responses Re: problem with multiple result sets
List pgsql-odbc
ODBC driver version: 7.2.5
PostgreSQL database version: 7.3.2

I'm using the database and odbc driver which ship with SuSE 8.2
Professional, but the problem is the same with the PostgreSQL database
and driver on RedHat 9.

The problem occurs when accessing multiple result sets from a batch
query such as `select * from table1; select * from table2'. To read back
the result sets, I use a loop involving a call to SQLMoreResults() as
described in the ODBC docs. The basic outline of the loop is as follows
(with error checking on return values omitted for clarity):

do {
   /* check for the availability of a result set with SQLNumResultCols()
      and get the column titles from the current result set using
      SQLDescribeCol() */
   while (SQLFetch(hstmt) != SQL_NO_DATA_FOUND) {
     /* get the data from the current row using SQLGetData() */
   }
} while (SQLMoreResults(hstmt) == SQL_SUCCESS);

I guess that's the right way to do it; I mostly pilfered this code from
the odbctest program included with iODBC.

Using this code, I can access single result sets, or multiple results if
the results are just row counts all right, but when I try to read
multiple result sets from a query like the one above, it seems that
after SQLMoreResults() the cursor is not properly reset to the first row
in the next result set. Specifically, if the 1st query yields 8 rows and
the 2nd one 10 rows, then I get all rows from the first result set, but
only the last one (the 10th row) from the 2nd.

This happens with both the iODBC and unixODBC driver managers. I also
found the same behaviour when executing the batched query from the
odbctest program, so it is not specific to my application.

Is there something I'm doing wrong here? Any way to fix this?

Many thanks in advance,
Albert Graef

P.S.: As I'm not subscribed to the list it would be nice if you cc to my
mail address. Thanks.

--
Dr. Albert Gr"af
Email:  Dr.Graef@t-online.de, ag@muwiinfa.geschichte.uni-mainz.de
WWW:    http://www.musikwissenschaft.uni-mainz.de/~ag



pgsql-odbc by date:

Previous
From: "Relaxin"
Date:
Subject: Re: how to compile the odbc source?
Next
From: Richard Combs
Date:
Subject: Re: Delphi7, ADO, ODBC and PostgreSQL connection problems