disk network error in access database

Posted on 2009-12-17
Last Modified: 2013-11-16
An Access 2000 database, which has worked OK, is now giving a "disk or network error" when trying to view any tables.
Access 2003
XP pro sp3
Question by:CCBIL
    LVL 39

    Expert Comment

    Check the security settings and share settings.
    For databases on network computers, go to the level that is shared. Usually that is an entire drive. Right click on it and select "sharing and security". Make sure "share this folder" is selected and there is a share name that does not have a dollar sign ($) behind it in the drop down box. (The dollar sign share is a default share for administrator only.) If there is not one, add it. Select a share without a dollar sign. Select permissions. Make sure the users that will be using the db have change and read permissions.

    Then right click on the folder(s) that contain the database(s) and select "sharing and security". Select security. Make sure the users have read, write, modify, and read & execute permissions. Select advanced. Edit the users that will access the databases. Make sure they have create files and delete permissions.

    Then right click on the the database(s) and select "sharing and security". Select security. Make sure the users have read, write, modify, and read & execute permissions.

    All databases are heavy network users. Running a multi user access database, all workstations should be running the xp or vista pro version. If you have less than about five workstations, you might get away with the backend being on a system running pro but more than that or with a complicated database, you need a domain and the server running a server os. Get up to a dozen heavy users or a couple of dozen light users and the server should be a true server and be dedicated to only serving the one database.
    LVL 1

    Author Comment

    Security settings all check out, that's not the problem.
    LVL 39

    Expert Comment

    Next to check out would be a corrupted database.  I would not go past step 7 just suspecting a corrupted database. I include the additional steps for your future reference.

    Steps (approximately in order) to use to fix a corrupted Access database. (Test after each step.)


    2) Compact and repair

    3) Use jetcomp.exe;en-us;Q273956

    4) decompile: in run: msaccess "dbPathName.mdb" /decompile
       Compact/repair:  in run: msaccess "dbPathName.mdb" /compact
       compile: in VB editor: debug> compile

    5) Use a backup (you have a lot of those -- yes?)

    6) If you can identify one or a few forms or reports causing problems, copy the problem form/report from a backup.  Or create a new form/report and copy all the objects in the old form/report to the new one. Copy the code from the old form/report using the undocumented
        Application.SaveAsText acForm, FormName, "C:\" & FormName & ".txt"
    then paste that from Notepad into the new form/report.  If a module, copy the code using SaveAsText, create a new module, paste the code into the new module.

    7) Create a new database, use File> Get external data> Import to get all objects of the damaged database and set up the options again.

    8) Try a recovery tool:

    9) Hire a company to repair the database

    Additional information:
    How to Troubleshoot/Repair Damaged Jet 3.0 and Prior Databases

    How to Troubleshoot Corruption in a Microsoft Access Database;en-us;306204

    Corrupt Microsoft Access MDBs FAQ
    LVL 75

    Expert Comment

    by:DatabaseMX (Joe Anderson - Access MVP)
    In many cases, that specific error actually indicates corruption and has nothing to do with a disk or network, even if you are on a network.  *Usually, Decompile as recommended by nelson will fix this.  Here is a detailed DeCompile procedure to try:

    A **DeCompile** may help here ...

    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:
            Note ... after the word Compile 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:

    LVL 1

    Author Comment

    The database was moved to a different server, and it seems that a line in the code is referencing the server (\\servername). Will a decompile allow me to change that code and recompile? The original uncompiled code is long gone.
    LVL 10

    Accepted Solution

    You mean the backend path is hardcoded and the database is an .mde or .exe? Doing a decompile will not get you the ability to change the code unfortunately...
    LVL 75

    Expert Comment

    by:DatabaseMX (Joe Anderson - Access MVP)
    Decompile is not a 'code changing' operation per se.  And if you have an MDE instead of an MDB then you cannot Decompile anyway.

    LVL 75

    Expert Comment

    by:DatabaseMX (Joe Anderson - Access MVP)

    Why did you accept an answer that is just a statement?  You never indicated you had an MDE?

    Nor is the answer a solution ...


    Featured Post

    How to run any project with ease

    Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
    - Combine task lists, docs, spreadsheets, and chat in one
    - View and edit from mobile/offline
    - Cut down on emails

    Join & Write a Comment

    I annotated my article on ransomware somewhat extensively, but I keep adding new references and wanted to put a link to the reference library.  Despite all the reference tools I have on hand, it was not easy to find a way to do this easily. I finall…
    CCModeler offers a way to enter basic information like entities, attributes and relationships and export them as yEd or erviz diagram. It also can import existing Access or SQL Server tables with relationships.
    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.
    In Microsoft Access, learn the trick to repeating sub-report headings at the top of each page. The problem with sub-reports and headings: Add a dummy group to the sub report using the expression =1: Set the “Repeat Section” property of the dummy…

    755 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

    Need Help in Real-Time?

    Connect with top rated Experts

    16 Experts available now in Live!

    Get 1:1 Help Now