回 帖 发 新 帖 刷新版面

主题:不能更新。数据库或对象为只读 谁帮解决一下。

谁帮解决一下,先谢谢了。
出现这样的错误
错误类型:
Microsoft JET Database Engine (0x80040E09)
不能更新。数据库或对象为只读。
/预约系统/写数据.asp, 第 10 行
<%
        set gym_conn=server.CreateObject("adodb.connection")
        gym_conn.connectionstring="provider=microsoft.jet.oledb.4.0;"&"data
                     source="& server.MapPath("data/gym.mdb")
        gym_conn.open
set rs_user=server.CreateObject("adodb.recordset")
rs_user.open "select * from user_reg",gym_conn,3,2
rs_user.addnew()   '这是第10行
rs_user("user_name")=nametest
rs_user("psw")=psw
rs_user("sex")=sex
rs_user("age")=datediff("yyy",byear&"-"& bmonth&"-"& bday,date)
rs_user("byear")=byear
rs_user("bmoth")=bmonth
rs_user("bday")=bday
rs_user.update
session("user_name")=nametest
%>

回复列表 (共4个回复)

沙发


第一种是IIS问题,你可以换个其他机器,测试下其中的代码,一般重装IIS是解决不了问题的! 
第二,是数据库设置成了只读,或者是没有给他权限,IIS不能匿名访问! 
3.有可能你数据库所在的硬盘应该是NTFS格式,需要开通权限。 

XP操作系统安装好,文件夹选项里面默认使用简单共享(推荐),把这个选项去掉, 
再在文件夹上右键点击,就会出现安全这个选项卡, 
原来默认的没有,然后在安全选项卡里面可以设置用户的写入权限了 
右击数据库>安全>everyone>将需要的勾上 


请查看你web目录及目录下所有文件和文件夹的属性,是否有只读属性的?这个问题,通常是数据库文件*.mdb属性为只读而导致的

板凳

99%的原因是数据库文件设置了访问权限。

3 楼

你的问题一楼的第三个答案可能能帮你解决
我以前也遇到过

4 楼

rs_user.open "select * from user_reg",gym_conn,3,2
把第9行的 3,2改成1,3就可以了
试下吧

我来回复

您尚未登录,请登录后再回复。点此登录或注册