我的代码如下
<%
dim rs4
dim sql
Set rs4=server.createobject("ADODB.RecordSet")
dim conn,DBPath1
set conn=Server.CreateObject("ADODB.Connection")
  DBPath1 = Server.MapPath("db/book.mdb")
  conn.Open "provider=microsoft.jet.oledb.4.0;data source="&DBPath1sql2="update guest set replyed=True where id="&CInt(getid)
rs4.open sql2,conn,1,1%>
</head><body>
</body>
</html>
其中replyed为是/否的数据类型,id为自动编号
错误为
错误类型:
Microsoft JET Database Engine (0x80004005)
操作必须使用一个可更新的查询。

解决方案 »

  1.   

    下面是Microsoft JET Database Engine (0x80004005)未指定的错误的所有解决方法,转自网络,放在这里希望能帮上大家解决问题。1.查看数据库连接语句没有发现错误;
    2.查看文件夹的权限已经全部给了everyone;
    3.打开数据库的同时,系统会在临时文件夹 %SystemRoot%/temp/ 下创建临时文件,而 %SystemRoot%/temp/ 的权限不够
    解决:%SystemRoot%/temp/ 的权限加上(IUSER_电脑名的读写)更多内容参考: http://hi.baidu.com/cfscc
    2、如果一般未指定的错误,还有个办法,先
    其实只要很简单的几步。:
    开始运行regsvr32 jscript.dll
    开始运行regsvr32 vbscript.dll
    开始运行iisreset
    Microsoft JET Database Engine (0x80004005)未指定的错误解决
    1、系统可能没有注册msjetoledb40.dll,解决办法是
       点 开始--->运行, 输入 regsvr32 msjetoledb40.dll, 回车即可;2、数据库所在文件夹权限
       打开办法是:打开我的电脑,然后点菜单上的“文件夹选项”--->查看,然后把“使用简单文件夹共享(推荐)”前面的钩去掉,然后点“确认”;接下来回到需要打开权限的文件夹(数据库存放的文件夹),右键---> 属性--->安全,然后点“添加”--->"高级"--->立即查找--->然后在下面的地方选择“everyone”--->确定--->点刚才加入的"everyone",然后在下面的大框编辑everyone权限为完全控制,保存即可。
    3、需要打开guest用户
       打开方法:我的电脑--->控制面板--->管理工具---->计算机管理--->本地用户和组---用户---找到"guest",双击,然后把弹出来的狂上的“帐户已停用”前的钩去掉,保存即可。
    4、temp(临时文件夹)权限
       打开办法:windows--->temp,单击右键选择-属性,你就会看到一个叫做“安全”的选项,添加一个everyone,权限设置为完全控制,再将你正在使用windows的用户也设置为完全控制.(件夹权限
       打开办法是:打开我的电脑,然后点菜单上的“文件夹选项”--->查看,然后把“使用简单文件夹共享(推荐)”前面的钩去掉,然后点“确认”;接下来回到需要打开权限的文件夹(数据库存放的文件夹),右键---> 属性--->安全,然后点“添加”--->"高级"--->立即查找--->然后在下面的地方选择“everyone”--->确定--->点刚才加入的"everyone",然后在下面的大框编辑everyone权限为完全控制,保存即可。
      

  2.   

    sql2="update guest set replyed=True where id="&CInt(getid)
    replyed这个字段是什么类型?