Modified 2001/05/16 - JSB

MS ACCESS 2000 - Hazards and Issues

I. Problems with Setting an OBJdbConnection Object from VBScript

Take nothing for granted upon the first time usage of an Access 2000 DB. The scenerio I had was that I migrated an Access 97 DB, which previously functioned with serverside VBScript connectivity, to Access 2000 format. (Access 2000 was newly installed at this point.) The .asp file test yeilded the following 500 class error from Access 2000 to the Response.Object:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft] [ODBC Microsoft Access Driver] General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x8cc Thread 0x94c DBC 0x2e361ec Jet'.

The .asp code where it choked is:

Set OBJdbConnection = Server.CreateObject("ADODB.Connection")
OBJdbConnection.Open("Driver={Microsoft Access Driver(*.mdb)};DBQ=" & orgPath & "\whrereEverYourAppIs\yourDB.mdb")

1. Set Windows Temp Directory Priviliges Appropriately (for IUSR)

  • Open the Windows (file) Explorer.
  • Find the \WINNT\Temp directory.
  • Right click and select "Temp Properties".
  • In the resulting panel click on the "Security" tab.
  • Now click the "Add" button.
  • In the new "Select Users ..." panel (the top list box) select the user entity whose first 5 characters are "IUSR_", which is the Internet Guest User.
  • (After adding the IUSR you will be back in the "Security" tab in "Temp Properties" panel.)
  • In the "Permissions" box allow only List Folder Contents, Read, and Write permissions.
  • It also very important to click the checkbox saying "Allow inheritable from parent to propagate this object".

    2. Set Server Application Directory Priviliges Appropriately (for IUSR)

  • All the steps to do this are the same as in the above paragraph number 1.

    NB: the "Server Application Directory" refers to the area below the server-root, which is the physical directory from whence the server serves. In MS Server 2000 case this is C:\Inetpub\wwwroot\whrereEverYourAppIs , to which one would browse with the URL, http://yourHost/whrereEverYourAppIs .

    Back to top of page.

    II. Problems with timing out during a SQL query from the OBJdbConnection Object in VBScript

    After fixing the problem with setting the OBJdbConnection Object (I., above), I still kept getting another error:

    Provider error '80004005' Unspecified error xxx.asp, line ###

    Though none of this is shown in the error message, yhis involved an assumed timeout of the OBJdbConnection Object while accessing the Access 2000 DB. The fix for this is merely to set a timeout value for the OBJdbConnection Object:

    Set OBJdbConnection = Server.CreateObject("ADODB.Connection")
    ' Without the following ConnectionTimeout setting application fails intermittently.
    OBJdbConnection.ConnectionTimeout = 20
    OBJdbConnection.Open("Driver={Microsoft Access Driver (*.mdb)};DBQ=" & orgPath & "\whrereEverYourAppIs\yourDB.mdb")

    III. Miscellaneous notes related to ODBC for MySQL and MS Windows

  • Access 2000 needs a patch from Microsoft to be able to export tables to MySQL; Just download and install the newest Microsoft MDAC from http://www.microsoft.com/data .

    Back to top of page.

    Edit 
    Language: fr  | it  | de  | es  | pt  | ar  | he  | da  | nl  | zh  | ja  | ko  | none 

    This Version:
    Archived at: https://www.skybuilders.com/Users/Jesse/Docs/Access2000.20010516130938.html

    Requests
     Version: 3448 | Series: 85306