Thread: use declare/fetch

use declare/fetch

From
"Garner Chung"
Date:
We're experimenting with the "use declare/fetch" setting in our MS
Access/DAO - PG 8.1 environment. We're using the psqlODBC snapshot
driver version, 8.02.01.03.

However, we're experiencing a problem. With the "use declare/fetch"
setting on we get an error on the (cache size - 49)th call to a dao
recordset's MoveNext method. So with our current cache size setting of
500, the 451st call to MoveNext generates an ODBC error. With the cache
size set to 100, the 51st call to MoveNext fails. See below for the
relevant COMM log entries.

We have tried various arguments to OpenRecordset to no
avail(dbOpenDynaset, dbOpenSnapshot, etc.). I'm guessing there's a
setting somewhere that we're missing that needs to be set in addition.

Again, thanks in advance for your attention...

garner

PS. Is it still true that the SQLExtendedFetch calls, bookmarks,
movelast, etc., are not supported with the "use declare/fetch" setting?

--LOG--

STATEMENT ERROR: func=SC_fetch, desc='', errnum=1, errmsg='Error
fetching next row'

------------------------------------------------------------
                 hdbc=11e53a20, stmt=11e58dc0, result=11e5d790
                 prepare=0, internal=0
                 bindings=121144e8, bindings_allocated=2
                 parameters=0, parameters_allocated=0
                 statement_type=0, statement='SELECT "table_schema"
,"table_name"  FROM "information_schema"."tables" WHERE ("table_schema"
IN ('p_0001' ,'m' ,'public' ) ) ORDER BY
"information_schema"."tables"."table_schema"
,"information_schema"."tables"."table_name"  '
                 stmt_with_params='declare "SQL_CUR11E58DC0" cursor with
hold for SELECT "table_schema" ,"table_name"  FROM
"information_schema"."tables" WHERE ("table_schema" IN ('p_0001' ,'m'
,'public' ) ) ORDER BY "information_schema"."tables"."table_schema"
,"information_schema"."tables"."table_name"  '
                 data_at_exec=-1, current_exec_param=-1, put_data=0
                 currTuple=499, current_col=1, lobj_fd=-1
                 maxRows=0, rowset_size=1, keyset_size=0, cursor_type=0,
scroll_concurrency=1
                 cursor_name='SQL_CUR11E58DC0'
                 ----------------QResult Info
-------------------------------
                 fields=11e5a768, backend_tuples=1211d010, tupleField=0,
conn=11e53a20
                 fetch_count=1, num_total_rows=500, num_fields=2,
cursor='SQL_CUR11E58DC0'
                 message='(NULL)', command='FETCH', notice='(NULL)'
                 status=100, inTuples=0
CONN ERROR: func=SC_fetch, desc='', errnum=0, errmsg='(NULL)'
            ------------------------------------------------------------
            henv=11e539f0, conn=11e53a20, status=1, num_stmts=16
            sock=11e56568, stmts=11e58640, lobj_type=-999
            ---------------- Socket Info -------------------------------
            socket=1360, reverse=0, errornumber=0, errormsg='(NULL)'
            buffer_in=300246576, buffer_out=300250680
            buffer_filled_in=3521, buffer_filled_out=0,
buffer_read_in=3521


Re: use declare/fetch

From
Hiroshi Inoue
Date:
Garner Chung wrote:
> We're experimenting with the "use declare/fetch" setting in our MS
> Access/DAO - PG 8.1 environment. We're using the psqlODBC snapshot
> driver version, 8.02.01.03.
>
> However, we're experiencing a problem. With the "use declare/fetch"
> setting on we get an error on the (cache size - 49)th call to a dao
> recordset's MoveNext method. So with our current cache size setting of
> 500, the 451st call to MoveNext generates an ODBC error. With the cache
> size set to 100, the 51st call to MoveNext fails. See below for the
> relevant COMM log entries.

Could you send me directly the Mylog output ?

regards,
Hiroshi Inoue