Connecting To Multiple Databases - Performance Recommendation Please
Nov 29, 2006
Hey Access people...
Does anyone know if it is better as a general rule (server performance wise anyway) to connect to a single database with many tables or multiple databases with fewer tables??
In this case I have a small calendar database and large navigation/metadata database -- both are MS Access & connected to the same ASP page.
I have a club member registration application consisting of a program database and a data database. They reside in the same directory. There is an autoexec macro which runs at the beginning. This macro has to find the DATAdb and make sure that the required tables are linked (Not all tables). If it cannot find the DATAdb and then has to make a call to the user to use a different procedure.
Now to find the DATAdb I have used the following code that works. The function GetPathAndName parses the string db.name and outputs the path and name of the PROGdb. Up to here no problems.
Code: GetPathAndName db.Name, FrontPath, dName
Then I use the following code to get the fullpath of the last database used and thereby find the path and name of the last DATAdb. The path of PROGdb is used in place of the existing path of DATAdb to check whether the file exists.
Code: Dim rs As Recordset, cPath As String, cName As String Set rs = CurrentDb.OpenRecordset("SELECT Database, Type " & _ "FROM MSysObjects " & _ "WHERE ((MsysObjects.Type) = 6) AND ((MsysObjects.Name) = 'MembersTbl') " & _ "ORDER BY MsysObjects.DateUpdate DESC;")
[Code] .....
As the final step I use the table definitions to refresh links that already exist and connect tables that are not linked The code is below. But I can not get it to work. It links 7 tables instead of 16 and when tested in different folder says invalid operation and so on. There is fundamental error some place but I could not figure it out.
Code: On Error GoTo Error_Linking Debug.Print "TableDefs.Count="; db.TableDefs.Count For I = 0 To db.TableDefs.Count - 1 Debug.Print "TableDefs("; I; ").Connect="; db.TableDefs(I).Connect Debug.Print "TableDefs("; I; ").Name="; db.TableDefs(I).Name
I want to create a form that has several parts(5), that will direct to 5 different tables(they will all be connected). I want to keep it as one form because if I'm successful it will be easier for people to transition from a paper to electronic form(if the format is similar). I don't want any subforms, I just want to be able to direct the information to different tables.
I try to call one database forms and tables into another database without creating tables and forms.
Database where (target) i need to open forms and tables: insurance.mdb (In the same database I click on TOOLS - REFERENCES and add accountreceivable.mdb as i need all forms and table from that database)
Database from where (source) i need forms and tables accountreceivable.mdb
I try to call forms and tables from accountreceivable.mdb into insurance.mdb. Do i use the below function in insurance database to open tables and forms from 2nd database. If i do where should i write this function i mean in the module of insurance database or in the module of accountreceivable database. How to i call that function
Function OpenForm(byref vformname as string) as boolean docmd.open vformname,,,,,acdialog
Hoping someone may be able to point me in the right direction.
I've got several databases used for different tasks, in which I just added an hyperlink to them from a front end database. All my team could access any of the data bases at once. It was using the WINNT/MS OFFICE mdw file.
Since my last question, I've now managed to set up a MS Workgroup Administrator file, which is on a shared drive. Everyone has joined this workgroup, and when people logon it now greets them with their name and records their name against any tasks. Thanks to everyone for their help with setting this up.
But since I created this new workgroup, we can't access more than one database at at time. It comes up saying 'mdw file is in use'. However, one person in the office can. I've looked at all the setups for individuals, and can't see any difference between ours & this one individual.
Ok, this is only a very general question, but I'm hoping somebody here can give me some general advice.
Basically, I have three separate database which I've written for my company. They were all written at different times, hence the fact there are three and not one that does three things. The first is used to raise, edit, delete, and track RMA records for returned merchandise. The second is used to raise, edit, and track Training data for people who have undergone my training course. The third is my main database that contains all of my clients' details, plus a log of all calls taken from them. This is the largest and most complex of the databases and has some fairly advanced relationships setup to enabled hundreds of call logs to be linked to a single record of necessary.
Now all three databases have been written using the same kind of structure. They all use popup modal forms to prevent malicious/accidental damage to the database by the staff who use them. They are all locked down and Access cannot be broken into whilst they are running. they all also have their own primary keys.
All these databases work just fine, but I'm now a little tired of each staff member having three shortcuts on their desktops, depending on which database they need to use. what I'd really like to do is somehow merge all three of these databases into one single database, and alter the switchboard accordingly to allow users to access any of the three parts of it.
The problems - as I see them - are: (a) that my main database uses a lot of relationship links to maintain certain records, whilst the other two use none, and, (b) that each database, having been written separately, has records with their own ID keys and autonumbers.
I did toy with the idea of having some kind of function on my main switchboard that would allow me to close the current database being used and open another, all without closing Access, but I haven't been too successful in my tests...
...so, my question is, does anybody have any bright ideas as to how I can go about merging these three, or, at very least, centralising access to all three?
I'm hoping someone out there can help me out with a problem. I work for a company that creates websites for car dealerships. The process involves me inputing data to a standalone program which creates a database for each dealer. When I upload the information, the program I use creates an inventory.mdb which is accessed through the asp pages I have. examples of finished product are: http://maconsales.com/freedom/inventory.asp http://maconsales.com/freedomnew/inventory.asp
We currently host about 13 dealers. What my boss is wanting me to do, and I'm having problems doing, is making it possible for someone online to visit our main site and view all inventory from all dealers without having to leave our site to look at each individual inventory. And I would like to do it without having to manually create a central database with all the inventory we have, about 1400 vehicles.
Is what I'm trying even possible? or am I looking at a long night of data entry?
I've inherited an Access Application which has (1) a number of linked tables that are used to seed the underlying SQL Server database.
This system has been set up and is working in Development. My task is to move it to UAT but with regards to point (1) above I can't see any alternative but to copy the Access Database, create a new System DSN and re-import the External Data from the new DSN. What I'd like to do is use the same Access Database to point towards DEV or UAT or PRD. Is this possible to do this or am I stuck with maintaining 3 different Access Databases ?
I am a developer with many years of experience but my Access knowledge is limited so any pointers would be helpful.
I inherited an interesting problem. I have 3700 tiny MDB files all of which contain the same table (same name, field structure, etc.), but different data. Each database has a slightly different name. It's the result of XML data mining.
I need to combine these 3700 tables from these different databases into one table in one database.
I can't see any way to automate this and as it's a one-time only project I don't know whether it's worth trying to automate it or if I should roll up my sleeves and just start apending tables.
I have around 10 mdbs and in each I have 4 tables, I want to add all the tables from 10 mdb to one mdb, finally I will have 4 toal tables, right now I am using a appendquery to add tables. Is there way using VBA I can do it on the form and with one click of a button I will be able to add. Thanks for any info..
Hi all, i hope this is posted in the right place first of all :) apologies if not..
I have about 8 individual databases which will be used simultaneously by users. I wish to be able to have full control over these databases from a 'master database' including being able to delete the data in there (possibly import fresh data but not 100% needed) and export data to be analysed in Excel etc I figure this can be done with access but if i'm on the totally wrong track i would be appreciative if someone could give me a push in the right direction..
If any more infomation is needed then let me know.
I maintain a database that is used by several people in my office. Only about 4 different people actually use the database but I would like the database to have multi-user support. As of right now the tables, forms, modules, etc. are all in a single mdb file. Can someone recommend a method for making this database accessible to several users at once? My main concerns are accuracy (changes commiting in the proper order) and low chance of corruption.
I have one Master database and multiple child databases in a folder. Each of these databases (both Parent and Child) have identical table called "source". I need a VBA code which will consolidate tables of child database into the Parent database table.
I maintain a simple Access database which about 30 other users have open every day and use it solely as a reference book. It is simply a large reference 'toolbox' with one form and many many sub reports in the form with links to refference guides for my users. Very often I need to add new reports and just new content overall to the database. My current process is to
1) make a copy 2) modify the copy with all my new content 3) Send and email with the file attached telling all 30 users to delete their old database and use this updated version.
Of course we have many issues including:
1) The files are very large in Lotus notes (is there a way to make these files a lot smaller) 2) Seems like a waste to delete and replace an entire database when only 1 or 2 minor links need to be changed every time. Is there a macro or some code I can create that would act as a patch where the 30 users can run the code and it will change hyperlink paths that I needed changed, report content or anything that needs changing.
gets around having all my users copy and replacing their database toolbox on their desktop. We all work out of a shared network drive so I can have them use the database together in a shared drive but its litterally impossible to have every hand out of the database all at once so I can go in and update, it just does not happen so if there is a work around for getting all users out of the DB, it could avoid having to do anything else.
I'm scanning bar codes into the record search box, most of the time it works as it should but occasionally I get multiple "cannot open any more databases" errors. It still finds the product record but the error messages are super annoying. I am sure to clear the memory on the scanner each time before I scan in a new barcode but it doesn't seem to matter. Also sure to only have one or 2 forms open at a time, that doesn't seem to matter either. Most of the time I don't get the errors but when I have to click through like 10+ error messages (all identical). I only have one database open so I'm not sure what it even means. Also I have tried this in 2 different forms and it's the same for both forms. Seems like I get the errors in my initial scan and then after clearing them it seems to work without errors.
I have a database with a number of linked tables that are linked to tables in different databases (not a back-end).for example, I have table1 that is linked to table1 in K:databasedb1.mdb.table2 linked to table2 in S:datadata.mdb.and so on...
However, recently we have moved all our databases to a new location.
K:databasedb1.mdb is now residing in O:masterdatabase and S:datadata.mdb is now residing in O:masterdata and so on...
I'm now in charge of relinking all those tables to point to the new location.I would do this in linked table manager one by one but we have 100s of tables linked to multiple different databases in different location.is there a way to create a VBA code that will automatically do this re-linking process?
so, 1. find unlinkable tables 2. search its new location under O:master 3. re-link it to the new location
Database names and tables names have not been changed. Just the location of databases.
Could having two look up queries, one on form an the other on table, and both of them take info from the same field and store it in a different field on a different table slow the DB? :)
case 1: Link the SQL Server tables to MS Access (mdb file) - there are 50 concurrent users access in the same file (network share drive).
case 2: create adp file - there are 50 concurrent users access in the same file (network share drive).
I know if each client has own copy on his local machine, it will not have any problem. But, if we want to put one file only in the sharing drive, then if either the client or server computer (or the connection between them) fails during the transaction or other operation that writes to the database file, which case is better to solve?
Is it possible to connect a Document to the Access Database. To have a button beside the field in the form allowing you to browze and connect the document. If not does anyone have a way around this. Any help would be well appreciated.
Hi We have a database implemented in MS-SQL server 2000 on a local machine. I want to use some of tables in my access (or excel) program. Can I link to the table?
I'm having a problem in Access where I'm trying to connect 2 tables together. On one table is all the information of the person, the other table is a list from 1-50. That list is a drawing of all the peoples ID number for a drawing. When I type in their ID next to what order they got picked in is there any way where All of their information comes with that ID number they have? I really need help on this.
Hi there, I'm currently writing an accounting system and i got stuck with this section of trying to produce the account name in a query.
i have four tables
tblPurchase PurchaseID -Number
tblAccounts AccountID - Number AccountName - Text, usually has names like asset, cost of sales, expense, telephone, electricity, etc...
tblItems ItemID, Number AssetNum (tblAccounts.AccountName foreign key1), Number ExpenseNum(tblAccounts.AccountName foreign key2), Number IncomeNum(tblAccounts.AccountName foreign key3), Number
tblPurchaseLines PurchaseNum (foreign key for tblPurchase.PurchaseID), Number ItemNum (foreign key for tblItems.ItemID), Number
My question is how can i generate the query with the following fields:
PurchaseID ItemID AccountName of AssetNum AccountName of ExpenseNum AccountName of IncomeNum
I am aware that the query would produce three PurchaseID's for every ItemID it would encounter for every PurchaseLine.
So, here's my problem: I'm doing a database on my DVDs, and I wanted to add as much info as I can about them. But I have some problems with "actors", as you know one actor can be in several movies and one movie has several actors.
I want to put the actors in their own table and movies in their own. I know how to link them together, but I don't know how to link them together so that actors could be in more than one movie and movie could have more than one actor.
Hope that even someone understands my question since my english ain't so good..