今天对系统做了一下垃圾清理和系统优化方面的设置,然后在本机IIS打开网页时就总是提示这个错误了。搞了半天才找着原因。关于这个错误原因可能有很多,总之就是权限读取的问题。网上搜索整理了一下关于这个问题的可能原因及解决办法如下,以作参考:
windows+iis服务器上运行asp程序可能会出现数据库无法更新的情况,具体错误信息可能为:
1、microsoft jet database engine (0x80040e09) 不能更新。数据库或对象为只读
2、microsoft ole db provider for odbc drivers (0x80004005)[microsoft][odbc microsoft access driver] 操作必须使用一个可更新的查询。
3、microsoft jet database engine (0x80004005) 操作必须使用一个可更新的查询。
4、其他
解决方法:(针对不同的服务器可能解决办法不一样,在这里假设网站主目录为wwwroot)
首先保证您的conn没有任何问题!!
1.把iis里“目录安全性”中的“匿名访问和身份验证控制”取消,换成“集成 windows身份验证”即可。(我的就是这个方法解决的)
2、在wwwroot文件夹上面点击右键-“属性”-取消“只读”
3、数据库所在文件夹权限
打开办法是:打开我的电脑,然后点菜单上的“文件夹选项”—>查看,然后把“使用简单文件夹共享(推荐)”前面的钩去掉,然后点“确认”;接下来回到需要打开权限的文件夹(数据库存放的文件夹),右键—> 属性—>安全,然后点“添加”—>”高级”—>立即查找—>然后在下面的地方选择“everyone”—>确定—>点刚才加入的”everyone”,然后在下面的大框编辑everyone权限为完全控制,保存即可。此方法是目前解决这个问题最好的办法,一般都可以解决问题 xp系统下可能点击右键看不到“安全”选项,请先打开“工具”-“文件夹选项”-“查看”-取消“使用简单文件共享(推荐)” 然后即可在属性中找到“安全”选项
4、在wwwroot文件夹上面点击右键-“属性”-“web共享”-“共享文件夹”
5.在iis虚拟目录上点击右键-“属性”-”配置“-”选项“-”启用父目录“
6、如果一般未指定的错误,还有个办法,先
其实只要很简单的几步。:
开始。。。运行。。。regsvr32 jscript.dll
开始。。。运行。。。regsvr32 vbscript.dll
开始。。。运行。。。iisreset
7、系统可能没有注册msjetoledb40.dll,解决办法是
点 开始—>运行, 输入 regsvr32 msjetoledb40.dll, 回车即可;
8、需要打开guest用户
打开方法:我的电脑—>控制面板—>管理工具—->计算机管理—>本地用户和组—用户—
找到”guest”,双击,然后把弹出来的狂上的“帐户已停用”前的钩去掉,保存即可。
9、temp(临时文件夹)权限
打开办法:windows—>temp,单击右键选择-属性,你就会看到一个叫做“安全”的选项,添加一个everyone,权限设置为完全控制,再将你正在使用windows的用户也设置为完全控制.(文件夹权限
打开办法是:打开我的电脑,然后点菜单上的“文件夹选项”—>查看,然后把“使用简单文件夹共享(推荐)”前面的钩去掉,然后点“确认”;接下来回到需要打开权限的文件夹(数据库存放的文件夹),右键—> 属性—>安全,然后点“添加”—>”高级”—>立即查找—>然后在下面的地方选择“everyone”—>确定—>点刚才加入的”everyone”,然后在下面的大框编辑everyone权限为完全控制,保存即可。
Microsoft JET Database Engine (0x80004005)
不能锁定文件。
/admin.asp, 第 66 行