use declare/fetch
am 20.10.2006 20:49:39 von Garner ChungWe'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.=20
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=3DSC_fetch, desc=3D'', errnum=3D1, errmsg=3D'Error
fetching next row'
=20
------------------------------------------------------------
hdbc=3D11e53a20, stmt=3D11e58dc0, result=3D11e5d790
prepare=3D0, internal=3D0
bindings=3D121144e8, bindings_allocated=3D2
parameters=3D0, parameters_allocated=3D0
statement_type=3D0, statement=3D'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=3D'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=3D-1, current_exec_param=3D-1, put_data=3D0
currTuple=3D499, current_col=3D1, lobj_fd=3D-1
maxRows=3D0, rowset_size=3D1, keyset_size=3D0, cursor_type=
=3D0,
scroll_concurrency=3D1
cursor_name=3D'SQL_CUR11E58DC0'
----------------QResult Info
-------------------------------
fields=3D11e5a768, backend_tuples=3D1211d010, tupleField=
=3D0,
conn=3D11e53a20
fetch_count=3D1, num_total_rows=3D500, num_fields=3D2,
cursor=3D'SQL_CUR11E58DC0'
message=3D'(NULL)', command=3D'FETCH', notice=3D'(NULL)'
status=3D100, inTuples=3D0
CONN ERROR: func=3DSC_fetch, desc=3D'', errnum=3D0, errmsg=3D'(NULL)'
------------------------------------------------------------
henv=3D11e539f0, conn=3D11e53a20, status=3D1, num_stmts=3D16
sock=3D11e56568, stmts=3D11e58640, lobj_type=3D-999
---------------- Socket Info -------------------------------
socket=3D1360, reverse=3D0, errornumber=3D0, errormsg=3D'(NULL)'
buffer_in=3D300246576, buffer_out=3D300250680
buffer_filled_in=3D3521, buffer_filled_out=3D0,
buffer_read_in=3D3521
---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend