Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> Oracle Cursors not closed by Microsoft or Openlink ODBC Drivers
Hi
I have installed the new Microsoft ODBC Driver for Oracle (2.00.006325). The database is Oracle7 7.3.2.1.0 on Windows NT 3.51. I access the database though MSAccess 7.0 on a Windows95 client via a linked table.
Each update to a table leaves a cursor open on the server. The cursors remain open until the connection is closed. The updates are not made inside a transaction. (i.e. MSAccess's implicit transactions commit after every update.)
After the maximum number of open cursors is reached on Oracle (default 50) no more updates can be made.
The "opened cursors current" statistic increases by one for every update made, and is cumulative during a session. Thus closing the table or even the database does not reset the open cursor count.
The open cursors can be checked with the following query:
select v$session.sid, username, command, osuser, value as VALUE, v$statname.name as Statistic from v$session, v$sesstat, v$statname where v$session.sid = v$sesstat.sid and v$sesstat.statistic# = v$statname.statistic# and ( v$sesstat.statistic# = 2 or v$sesstat.statistic# = 3 or v$sesstat.statistic# = 4 )
(Log in as SYSTEM or DBA)
With exactly the same configuration:
This is exactly the same problem that I had with the OpenLink driver for
Oracle.
The problem does not occur with the Intersolv driver.
The problem does not occur with the Oracle driver.
The Oracle ODBC drivers have MANY other problems. The Intersolv driver seems to be the only usable driver in our situation, but might be a bit pricey.
G Received on Tue Apr 01 1997 - 00:00:00 CST
![]() |
![]() |