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'.
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)
2. Set Server Application Directory Priviliges Appropriately (for IUSR)
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 .
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")