IIS发布网站Microsoft JET Database Engine 错误 '80004005'的解决办法,基于Access数据库

在网站发布后,访问网站会有80004005的错误提示。

项目环境

项目基于Access数据库,server2012,文件系统为NTFS格式。

错误信息

Microsoft JETDatabase Engine 错误 '80004005' 未指定的错误,/conn.asp ,第5行

解决办法

错误原因是IIS匿名帐号(IUSR_计算机名)对相关文件、文件夹操作权限不足引起的。

发生相应错误尝试了很多的方法,具体如下:

1.首先确认了conn.asp文件确认没有错误。

2.之后便是对系统的数据库文件,即.mdb文件夹进行了权限设置,对IIS匿名帐号有写入权限,如果没有,请赋于写入权限,特别是当错误信息为(Microsoft JET Database Engine 错误 '80004005' 操作必须使用一个可更新的查询。)时。

3.C:/windows/temp目录权限问题。JET 引擎在链接数据库的时候会在windows/temp/目录下创建临时文件,而IIS匿名帐号对windows/temp/目录操作权限不够,添加IIS匿名帐号(IUSR_计算机名)对windowstemp/的读写权限即可。

4.其它一些未指定的错误,可以尝试重新注册ASP脚本解释链接库文件。

依顺序运行以下命令:

  1.regsvr32 jscript.dll

  2.regsvr32 vbscript.dll

  3.iisreset