Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Access 2007 bloat

Posted on 2008-10-27
6
Medium Priority
?
590 Views
Last Modified: 2013-11-29
I recently converted to access 2007 from access 2003.  Before I converted to access 2007, my .mdb was 2mb after compact and repair.  Now my frontend has bloated from 2mb to 10mb - after doing some non major modifications.  When I try to compact and repair the .mdb, the best it can do is 10mb.  But, if I create a backup, the backup is 2mb.  Why is this?
I took the backup of 2mb and I opened the file, then compacted and repaired it.  After this action the database doubled in size to 4mb.  What is the issue here?
0
Comment
Question by:T1080
  • 2
  • 2
  • 2
6 Comments
 
LVL 58

Assisted Solution

by:Jim Dettman (Microsoft MVP/ EE MVE)
Jim Dettman (Microsoft MVP/ EE MVE) earned 800 total points
ID: 22813785

  You've probably got some old dead object code in there.  You can use /decompile from the command line and then compact and repair or what I would do is import everything into a fresh MDB container.

JimD.
0
 
LVL 58
ID: 22813790

  BTW, it is not unusual for the DB to bloat up when making modifications.

JimD.
0
 
LVL 75
ID: 22813860
"What is the issue here?"

The issue is (ta da!):  A2007 !  This is the 3rd time I've heard this exact same scenario.  As JD suggested, prior to converting, be sure you are starting with a 'clean' mdb, including the Decompile, plus eliminate any no longer used objects, etc. If you need full instructions on Decompile, post back.

It's interesting that the 'backup' reduces the size - followed by an increase when doing a C&R.

mx
0
Configuration Guide and Best Practices

Read the guide to learn how to orchestrate Data ONTAP, create application-consistent backups and enable fast recovery from NetApp storage snapshots. Version 9.5 also contains performance and scalability enhancements to meet the needs of the largest enterprise environments.

 

Author Comment

by:T1080
ID: 22822607
MX:
Can you provide full instructions on Decompile?  When "starting with a clean .mdb"  I assume that means to open up a blank database and import everything from the old?  
I'm wondering if A2007 works out these bugs if the file extension is .accdb?  My only problem with that at this point is my users are still working with A2003, but will convert in the next six months.  


Thanks,

Troy
0
 
LVL 75

Accepted Solution

by:
DatabaseMX (Joe Anderson - Microsoft MVP, Access and Data Platform) earned 1200 total points
ID: 22823120
"I assume that means to open up a blank database and import everything from the old?  "
That is always a good idea - if you are planning on converting.

Here is the Decompile drill - which you can do after importing into a new mdb:

But first, if you have not already:
Open the VBA Editor and from the menu ...Tools>>References ....
If you see any listed as **Missing: <reference name>, including the asterisks and the word Missing, the
you need to fix that first.

Then, follow this procedure:

****
0) **Backup your MDB BEFORE running this procedure**
****
1) Compact and Repair the MDB, as follows:
Hold down the Shift key and open the MDB, then from the menu >>Tools>>Database Utilities>>Compact and Repair ...
Close the mdb after the Compact & Repair.
2) Execute the Decompile (See example syntax below) >> after which, your database will reopen.
3) Close the mdb
4) Open the mdb and do a Compact and Repair (#1 above).
5) Close the mdb.
6) Open the mdb:
    a) Right click over a 'blank' area of the database window (container) and select Visual Basic Editor. A new window will open with the title 'Microsoft Visual Basic' ... followed by then name of your MDB.
    b) From the VBA Editor Menu at the top of the window:
       >>Debug>>Compile
        Note ... after the word Compile ...you will see the name of your 'Project' - just an fyi.

7) Close the mdb
8) Compact and Repair one more time.

*** Executing the DeCompile **EXAMPLE**:
Here is an **example** of the command line syntax  (be SURE to adjust your path and file name accordingly) before executing the decompile:

Run this from Start>>Run, enter the following command line - **all on one line** - it may appear like two lines here in the post:
Also, the double quotes are required.

"C:\Program Files\Microsoft Office\Office\Msaccess.exe" /decompile "C:\Access2003Clients\YourMdbNameHERE.mdb"

For more detail on the Decompile subject ... visit the Master on the subject (and other great stuff) Michael Kaplan:

http://www.trigeminal.com/usenet/usenet004.asp?1033

mx
0
 

Author Closing Comment

by:T1080
ID: 31510361
Thanks for the posts.

Troy
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Access developers frequently have requirements to interact with Excel (import from or output to) in their applications.  You might be able to accomplish this with the TransferSpreadsheet and OutputTo methods, but in this series of articles I will di…
Did you know that more than 4 billion data records have been recorded as lost or stolen since 2013? It was a staggering number brought to our attention during last week’s ManageEngine webinar, where attendees received a comprehensive look at the ma…
Basics of query design. Shows you how to construct a simple query by adding tables, perform joins, defining output columns, perform sorting, and apply criteria.
Have you created a query with information for a calendar? ... and then, abra-cadabra, the calendar is done?! I am going to show you how to make that happen. Visualize your data!  ... really see it To use the code to create a calendar from a q…
Suggested Courses

782 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question