首页 > 服务器管理 > Microsoft JET Database Engine 错误 '80004005'
2014
04-10

Microsoft JET Database Engine 错误 '80004005'

Microsoft JET Database Engine 错误 '80004005' 找不到文件
网上提供了很多解决方案我将它都列出来。

方法一:
绝对路径
/data/#Access1.mdb
这个文件是否存在?
相对路径是这个,也就是相对于你的conn.asp的目录
data/#Access1.mdb
如果使用的是绝对路径请将它修改为相对路径

方法二:
IIS的来宾访问用户设置成管理员组

在计算机管理--用户中,找到IUSR_****,隶属于添加 administrators,然后需要重启IIS,网站可以打开了

把IIS的来宾访问用户设置成管理员,暂时这样用了……安全性上不推荐

方法三:
到IIS里——网站——默认网站——右击属性——目录安全性——编辑——不选择“匿认访问”和“身份验证控制”——只选择“Windows身份验证”——刷新默认网站即可

注:如果没有“目录安全性”,可先进入文件夹选项——查看——把“使用简单文件共享”的钩去掉即可

也可在此继续完成余下步骤——右击你的文件夹属性(会多出一个叫“安全”的选项)——你在安全区中添加everyone这个属性就可以了,至于everyone的权限默认的即可——刷新——从开网页看看

方法四:
点 开始--->运行, 输入 regsvr32 msjetoledb40.dll, 回车即可

最后说一句造成该问题的原因是数据库放置的位置权限不够

把数据库换个名字,不要使用“#”,比如改成:Live193.mdb;
保证MDB所在的文件夹能够被下列帐户访问:asp.net、Internet来宾帐户、NETWORK SERVICE。

方法五:
其它一些未指定的错误,可以尝试重新注册ASP脚本解释链接库文件。
依顺序运行以下命令:
1.regsvr32 jscript.dll
2.regsvr32 vbscript.dll
3.iisreset

其它:
发现ASP程序无法使用Access数据库,报错:
Microsoft JET Database Engine 错误 80004005 未指定的错误
或者显示
Microsoft OLE DB Provider for ODBC Drivers 错误 80004005
[Microsoft][ODBC Microsoft Access Driver]常见错误 不能打开注册表关键字 Temporary (volatile) Jet DSN for process 0x728 Thread 0x854 DBC 0x276fb44 Jet。
仔细检查后发现:
1.程序没有问题;
2.数据库文件所在目录也给了权限;
-----------------------------
最后终于发现,是由于我把 windows\temp 目录的IUSER(就是匿名访问用户)的权限去掉了,导致asp无法使用Access数据库。把权限加上,问题解决。 而且加了权限后,要重起电脑,不然还会有莫名的错误提示。
一般情况下asp可以正常运行,但只要连接数据库就提示,Microsoft JET Database Engine 错误 '80004005',我的电脑因为用批处理清理文件,所以不能运行了, 只
1.查看数据库连接语句没有发现错误;
2.查看文件夹的权限已经全部给了everyone;
3.打开数据库的同时,系统会在临时文件夹 %SystemRoot%/temp/ 下创建临时文件,而 %SystemRoot%/temp/ 的权限不够
解决:%SystemRoot%/temp/ 的权限加上(IUSER_电脑名的读写) //或者是你网站另外的访问用户

2、如果一般未指定的错误,还有个办法,先
其实只要很简单的几步。:
引用内容
开始。。。运行。。。regsvr32 jscript.dll
开始。。。运行。。。regsvr32 vbscript.dll
开始。。。运行。。。iisreset
这个也可以试下,只要程序没有问题不要过多的把精力放在程序上,试下其它方面,有时也只是一点点问题的事儿。在这上边真是费了我二个多小时才搞定,网上有许多的解决方法,这个解决方法集中其它常见的方法,希望对其它人解决问题提供一个快捷的途径,祝好运。
作者:admin
admin
TTF的家园-www.ttfde.top 个人博客以便写写东西,欢迎喜欢互联网的朋友一起交流!

本文》有 0 条评论

留下一个回复