Warning: Use of undefined constant ‘classic_options’ - assumed '‘classic_options’' (this will throw an Error in a future version of PHP) in /www/wwwroot/blog.itisxx.com/wordpress/wp-content/themes/fullstack/single.php on line 4

Warning: Use of undefined constant ‘notice’ - assumed '‘notice’' (this will throw an Error in a future version of PHP) in /www/wwwroot/blog.itisxx.com/wordpress/wp-content/themes/fullstack/single.php on line 5
首页 > 技术 > Win7/Win10中ASP无法调用MDB数据库解决办法DB Connection failure

Win7/Win10中ASP无法调用MDB数据库解决办法DB Connection failure

技术 2017-10-10 17:47:35 23℃ 评论已关闭

C:\Windows\ServiceProfiles\NetworkService\AppData\Local\Temp 加Everyone权限

Microsoft JET Database Engine (0x80004005)和DB Connection failure是一个错误,只是WEB程序的数据库连接里写的有些不一样,因为是NTFS分区,所以赋予了WEB程序所在分区Everyone组写入权限,这样ASP才可以把数据写进数据库.实验一下,还是不行,转到系统盘的WINDOWS文件夹,找TEMP文件夹,发现TEMP文件夹被改成TEMPEMPTEMP这个名字了,改回来,添加一个Everyone组并赋予写入权限.在实验,打开了.但是有一个框架还是出现了Microsoft JET Database Engine (0x80004005)错误,找到WEB的数据库连接代码,把conn.open "driver={microsoft access driver (*.mdb)};dbq=" & dbpath,修改成conn.open "provider=microsoft.jet.oledb.4.0;data source=" & dbpath,F5一下,问题解决.

随着操作系统的变化而变化,越来越多的人用上了 Win7 甚至 Win10 64位,但64位的 windows7 ,正确安装好IIS之后,尝试运行一个asp网站时,出现故障,逐级检查后,发现:

普通asp页面能正常打开,但是只要是连接mdb数据就出问题。

其实原因是在64位 Windows7 操作系统中,IIS7应用程序池默认没有启用32位应用程序,而我们连接ACCESS数据库的驱动程序Microsoft.Jet.OLEDB.4.0是32位的,所以就出错了,要想正常运行,只需启用32位应用程序即可。方法如下:

1、打开IIS信息服务管理器,在最右边的窗口中点击“查看应用程序池”链接

2、在出现的窗口中点击“设置应用程序池默认设置”链接,在弹出的窗口中将“常规”中的“启用32位应用程序”设置为“True”即可

该方法一样适用于 Win10 64位!!!

上一篇: 下一篇:
请安装多说插件-下载地址