
VB4 Oracle7 ODBC - Problems connecting from VB IDE
I'll bet your problem is with Oracls's driver. I'm using Oracle Objects
for OLE and the readme.wri file for version 2.0.5.0.1 included this
known problem with 16-bit implementations:
The VB IDE has a set of 16 file handles it uses for the various controls
and objects in use. (On the menu, see Tools|Controls and
Tools|References.) If you get a lot of things going, as I did, VB seems
to swap the various objects among the 16 file handles, so there is no
problem.
However, when Oracle opens a dynaset (a result table), Oracle creates a
local file to cache the data coming from the server. It uses one of the
handles from this group of 16 maintained by VB for each open result
set. If VB is already using all 16 (as in my case), the first attempt
to open a result set causes Oracle to crash due to lack of file handles.
Oracle fixed this in version 2.0.6.0.1 of OO4O, which is available only
as a patch by special request to Oracle. They now get their own file
handles instead of borrowing from VB.
This sure sounds like your problem.
Good luck,
Don Mackenzie
Quote:
> Does anybody know how to solve a problem with VB and Oracle using ODBC
> ?
> I am using VB 4 16-bit under Windows 3.1 with Oracle 7 and the latest
> Oracle ODBC driver on a Pentium with 16meg memory.
> My VB project is getting reasonably large now and when I try to log on
> to Oracle I get a Error 3146.
> This only happens when I run the app directly from the VB IDE,
> if I make an EXE it all works fine.
> This has been an intermittent problem in the past but it has been
> possible
> to get around it by closing and restarting windows.
> However, now it happens all the time and I therefore can't use debug
> anymore.
> I assume from the symptoms that it is somehow memory related but adding
> another 16meg memory didn't make any difference, is it base memory ?