Page 1 of 1

whats the number of max database can be opened?

PostPosted: Tue May 16, 2017 7:53 am
by yanzco
so, i was wondering whats the maximum number of microsoft access database that dbpro can open simultaneously?...

i also tried experimenting...
i created 120mb access database...

and created 25 of them...

i tried opening all of them..
results are i can connect to them freely no matter how many of them...
but when i open a table...

i can open 5 tables... the 6th one will get an error
when i check taskmanager the neobook app only get less than 2000mb.. or probably the 2gb limit of access..
but its only 5 tables.. or 5 120mb or 600mb of data..

is this the limit of access?


i tried using
Code: Select all
dbpOpenDatabase "A[looper]DB" "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\RTS Work Files\Access Filesize EXperiment\a[looper].mdb;CursorLocation=Server"

and i successfully opened tables of all 25 test access database..
each of the 25 .accdb are 185,555kb in filesize and has 1,000,000 records inside...


Re: whats the number of max database can be opened?

PostPosted: Sat Jun 03, 2017 8:41 pm
by Neosoft Support
There are no set limits built into DBPro, so in theory you should be able to open many databases at the same time. However, if each database contains millions of records then you'll probably run out of memory pretty quickly. It wasn't really designed for that kind of application.

While using CursorLocation=server is often needed when working with extremely large databases many database functions are limited or don't work at all.

Instead you might experiment with using a 'LIMIT' type query so that DBPro doesn't try to read the whole database into memory. You can use the dbpExecSQL action to open a large table/worksheet instead of dbpOpenTable. This will allow you to limit the number of records returned. For example, the following will display just the first 50 records from the Contacts table:

dbpExecSQL "AddrBook" "SELECT TOP 50 * FROM Contacts" ""
dbpShowGrid "AddrBook" "Contacts" "Rectangle1"

You could use other types SQL queries to limit the number of records displayed at one time. The trick is to avoid trying to display millions of records at the same time.