Hi,
My XP database has exceeded 2GB when running and gives the error "Invalid Argument"
I've tried deleting tables then tried to compact and repair the database but it will not do it. Any suggestions as I need it to work tomorrow.
Thanks for the help
Chris
15 11219
Hi,
My XP database has exceeded 2GB when running and gives the error "Invalid Argument"
I've tried deleting tables then tried to compact and repair the database but it will not do it. Any suggestions as I need it to work tomorrow.
Thanks for the help
Chris
You need to compact and repair. If the database won't do this for some reason see if the ldb (locked) file is open and delete it. This assumes no other user is on the system.
If this doesn't work copy the file to a local hard drive and try to compact and repair it there. Then replace the existing file after creating a backup.
The only other thing I can suggest is that you open a new access file and import all objects, etc.
You need to compact and repair. If the database won't do this for some reason see if the ldb (locked) file is open and delete it. This assumes no other user is on the system.
If this doesn't work copy the file to a local hard drive and try to compact and repair it there. Then replace the existing file after creating a backup.
The only other thing I can suggest is that you open a new access file and import all objects, etc.
Thanks,
I tried that but it did not work. I'm downloading my backup copy and hoping that I can import the tables into the restored database. Do you know how I can find out the size of the various sections of the database are? In particular tables, code and queries. I'm looking at spliting the database into 2 code and queries in one and data in the other and want to see what improvement I get.
Chris
Thanks,
I tried that but it did not work. I'm downloading my backup copy and hoping that I can import the tables into the restored database. Do you know how I can find out the size of the various sections of the database are? In particular tables, code and queries. I'm looking at spliting the database into 2 code and queries in one and data in the other and want to see what improvement I get.
Probably not a bad idea, but I think you'll find the other parts are negligible in comparison to the data.
Probably not a bad idea, but I think you'll find the other parts are negligible in comparison to the data.
Thanks for your reply. The database has extensive code used to append data each week to set tables which it first deletes all old data.
When the database is closed it compacts to 170,000kb in size even though the tables are now full.
However when it is running the database expands to just under 2GB. One of the first steps it does is a do loop where it reads a table which gives a start and end date for the flight. It then reads another table which tells it which days of the week the flight flies. It then creates a row for each day the flight flies from the start date to the end date. This process takes a long time and expands the database enormously. eg at 10% through the database was 600MB but at 30% it was 770MB. Each row has 164 fields which should require 374 bytes (if an integer is 2 bytes long), plus any database and field overheads. It is only creating 100,000 records which should occupy <400MB. By the end of this process the database is nearly 2GB.
Have you got any ideas on where the extra space has gone.
Thanks
Let me see if I'm following you here. Are you saying that on opening, it create a temporary table, which is deleted when you shut down? Or what?
If it is something along these lines, this sounds as though it could be a good candidate to split and have the user create the temp stuff in their front-end database. I still don't believe the actual code would take up enough space to worry about, but obviously what the code does could require any amount.
I'm going to yell for help to one or two Access experts (VB6 is more my area of expertise). In fact, I'm surprised they haven't jumped in yet.
NeoPa 32,511
Expert Mod 16PB
Two issues. - Temp data can take up a lot of space in your database. Unless and until you understand how Access does its stuff you will not have a reliable way to predict what space it should be taking up. Splitting the Front- and Back-Ends should certainly help here.
- Compact & Repair will only work on a database if there is enough space free at the start to cope with the extra temporary data required to do the job. I would allow at least ten to twenty percent for this.
In post #2 you will see an alternative to Compact & Repair which I'm confident you will need to use. Importing all the objects from your old database into two new ones - One for the Back-End (Data) and one for the Front-End (Project).
I'm going to yell for help to one or two Access experts (VB6 is more my area of expertise). In fact, I'm surprised they haven't jumped in yet.
Can't get around to all the new threads Killer. Not reliably in the first couple of days anymore. Would have got here eventually ;) but thanks for the heads-up.
However when it is running the database expands to just under 2GB. One of the first steps it does is a do loop where it reads a table which gives a start and end date for the flight. It then reads another table which tells it which days of the week the flight flies. It then creates a row for each day the flight flies from the start date to the end date. This process takes a long time and expands the database enormously. eg at 10% through the database was 600MB but at 30% it was 770MB. Each row has 164 fields which should require 374 bytes (if an integer is 2 bytes long), plus any database and field overheads. It is only creating 100,000 records which should occupy <400MB. By the end of this process the database is nearly 2GB.
Chris,
Can you post the code for this process. It shouldn't be taking a long time.
Mary
You can compact from outside, I mean open another Access instance in module type DBEngine.CompactDatabase SourceName, Destination it should work.
NeoPa 32,511
Expert Mod 16PB
Are you saying this should work notwithstanding point 2 in Post #7? Or did you not read that?
Bear in mind also, that the OP has said that the size of his database is close to 2GB.
...Compact & Repair will only work on a database if there is enough space free at the start to cope with the extra temporary data required to do the job. I would allow at least ten to twenty percent for this...
I would argue this point. I've had cases where I've had to move a bunch of records from one database to another, and had to keep compacting the destination one when it filled up the 2GB limit and "crashed".
NeoPa 32,511
Expert Mod 16PB
I couldn't argue the point with you Killer. I'm only speaking from my own personal experience. If you have had situations where a database closely approaching 2GB has successfully compacted then it must be possible at least. I can only say that I've had a number fail on me in that situation.
I couldn't argue the point with you Killer. I'm only speaking from my own personal experience. If you have had situations where a database closely approaching 2GB has successfully compacted then it must be possible at least. I can only say that I've had a number fail on me in that situation.
Likewise, of course, I can't speak for all situations. But I have compacted plenty which were not merely approaching, but had already hit the 2GB limit.
Incidentally, does anyone know whether any plans are afoot to overcome this silly limit? Or would that take business away form SQL Server or something?
NeoPa 32,511
Expert Mod 16PB
There's a theory that they're not pushing the SQL line quite so hard now (at the expense of Access) but I don't know how far that goes. They never merged the teams in the end I believe, so there is always hope. I've not heard it said yet that they're planning that though :(
You can compact from outside, I mean open another Access instance in module type DBEngine.CompactDatabase SourceName, Destination it should work.
Awesome...this worked perfectly for my same problem.
NeoPa 32,511
Expert Mod 16PB
I'm very pleased to hear that :)
Welcome to Bytes!
Sign in to post your reply or Sign up for a free account.
Similar topics
by: Ben |
last post by:
Hello,
I'm having trouble with the JoinMulticastingGroup function with C#
..NET and the Compact Framework. My console application on my PocketPC
has to listen for any datagrams coming from the...
|
by: Larry L |
last post by:
Access is noted for bloating a database when you add and delete records
frequently. I have always had mine set to compact on close, and that works
great. Now after everyone's advice I split my...
|
by: Paul T. Rong |
last post by:
Dear all,
My aim is to compact and repair current database, I got the following code
from http://www.mvps.org/access/general/gen0041.htm
Option Compare Database
' ***** Code Start *****...
|
by: Paolo |
last post by:
Hi,
I am trying to compact and repair my database, however every time I try it
comes up a message saying: Table: "TempMSysAccessObject already exists",
whenever I try to look for this table I...
|
by: jcazmail-groups |
last post by:
The following snippet gives me an error on the line regarding
AllowAdditions = False:
Private Sub EditLocked()
txtDeliveryDate.Locked = True
cmdDeliveryDate.Enabled = False...
|
by: MLH |
last post by:
I just used Tools / Database Utilities / Compact Database
in Access 97 for the first time. Unlike Access 2.0, it does
not ask me to furnish a filename for it to compact into.
It just launched...
|
by: owengoodhew |
last post by:
Hi,
I am responsible for maintaining an MS Access 97 Database that reliably
becomes corrupt following a compact.........
About the Database:
The database is made up of three linked databases,...
|
by: scottyman |
last post by:
I can't make this script work properly. I've gone as far as I can with
it and the rest is out of my ability. I can do some html editing but
I'm lost in the Java world. The script at the bottom of...
|
by: |
last post by:
In an Access 2000 database in Access 2003 (Dutch) I have the following code:
Option Compare Database
Option Explicit
Public Sub CompactDB()
CommandBars("Menu Bar"). _
Controls("Tools"). _...
|
by: Kemmylinns12 |
last post by:
Blockchain technology has emerged as a transformative force in the business world, offering unprecedented opportunities for innovation and efficiency. While initially associated with cryptocurrencies...
|
by: Naresh1 |
last post by:
What is WebLogic Admin Training?
WebLogic Admin Training is a specialized program designed to equip individuals with the skills and knowledge required to effectively administer and manage Oracle...
|
by: antdb |
last post by:
Ⅰ. Advantage of AntDB: hyper-convergence + streaming processing engine
In the overall architecture, a new "hyper-convergence" concept was proposed, which integrated multiple engines and...
|
by: Matthew3360 |
last post by:
Hi,
I have been trying to connect to a local host using php curl. But I am finding it hard to do this. I am doing the curl get request from my web server and have made sure to enable curl. I get a...
|
by: Carina712 |
last post by:
Setting background colors for Excel documents can help to improve the visual appeal of the document and make it easier to read and understand. Background colors can be used to highlight important...
|
by: Rahul1995seven |
last post by:
Introduction:
In the realm of programming languages, Python has emerged as a powerhouse. With its simplicity, versatility, and robustness, Python has gained popularity among beginners and experts...
|
by: Ricardo de Mila |
last post by:
Dear people, good afternoon...
I have a form in msAccess with lots of controls and a specific routine must be triggered if the mouse_down event happens in any control.
Than I need to discover what...
|
by: Johno34 |
last post by:
I have this click event on my form. It speaks to a Datasheet Subform
Private Sub Command260_Click()
Dim r As DAO.Recordset
Set r = Form_frmABCD.Form.RecordsetClone
r.MoveFirst
Do
If...
|
by: ezappsrUS |
last post by:
Hi,
I wonder if someone knows where I am going wrong below. I have a continuous form and two labels where only one would be visible depending on the checkbox being checked or not. Below is the...
| |