ACC: Error Message "Can't open any more tables"ID: Q165272
|
Moderate: Requires basic macro, coding, and interoperability skills.
When you try to open a table, a query, a form, or a report, or when you try
to run Visual Basic for Applications code that uses recordsets, you may
receive the following error message.
In Microsoft Access 7.0 and 97
------------------------------
Run-time error '2956':
Can't open any more tables.
Run-time error '3037':
Can't open any more tables or queries
You have exceeded the maximum number of open TableIDs allowed by the Microsoft Jet database engine.
This behavior is by design.
The Microsoft Jet database engine versions 3.0 and 3.5 allow a maximum of
1024 open TableIDs at one time. Microsoft Jet version 3.51 allows a maximum
of 2048 open TableIDs at one time. A TableID is a recordset pointer that
the database engine uses, and which is not exposed to the user. The Jet
database engine may open multiple TableIDs during the execution of a
single query; however, there is no accurate method to estimate the number
of TableIDs that the Jet database engine will use for any given operation.
For some operations, Microsoft Access 97 opens a few more TableIDs than do
earlier versions of Microsoft Access. That is why you may encounter this
error in a converted database that, for example, simultaneously opens
multiple complex forms or reports. If you were already close to the TableID
limit in Microsoft Access 2.0 or 7.0, the small amount of additional
overhead in Microsoft Access 97 may be enough to exceed 1024 open TableIDs.
Additional query words: table id
Keywords : kberrmsg kbusage CnvOthr
Version : WINDOWS:2.0,7.0,97
Platform : WINDOWS
Issue type : kbprb
Last Reviewed: June 2, 1999