Re: problem with multiple result sets - Mailing list pgsql-odbc

From Hiroshi Inoue
Subject Re: problem with multiple result sets
Date
Msg-id 000e01c3801f$c6bc3330$3d283ddb@PbgX
Whole thread Raw
In response to problem with multiple result sets  (Dr.Graef@t-online.de (Albert Graef))
Responses Re: problem with multiple result sets  (Dr.Graef@t-online.de (Albert Graef))
List pgsql-odbc
> -----Original Message-----
> From: Albert Graef
>
> 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.

Oh I see. I would try to fix it. However, I'm not sure how to
fix it in your *nix environment.

regards,
Hiroshi Inoue


pgsql-odbc by date:

Previous
From: "Johann Zuschlag"
Date:
Subject: odbc.sql
Next
From: "Hiroshi Inoue"
Date:
Subject: Re: LF <-> CR/LF conversion