求助,急~~ASP连接ACCESS数据库后,能查询但不能添加,修改,删除记录

iamfunction 2005-12-07 01:56:32
研究快一天了,一点头绪都没有...

系统原来用的是SQL SERVER2000数据库,一切正常,后改为ACCESS数据库,就变这样了...大家帮忙看看啊,多谢

连接字符串为:

dbpath=server.MapPath("database/sdfy.mdb")
constr="DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & dbpath

提示的错误信息为:

错误类型:
Microsoft JET Database Engine (0x80004005)
操作必须使用一个可更新的查询。
/tryacc.asp, 第 12 行


该行只有一句con.execute(sql),执行的sql语句为:update sd_master Set cookiess ='23445',lasttime ='2005-12-5 12:41:57',lastip ='127.0.0.1' where master_name='admin'

...全文
536 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
iamfunction 2005-12-08
  • 打赏
  • 举报
回复
多谢各位,确实是目录权限问题,系统是WIN2000 SERVER,赋给everyone权限后就OK了
ZMFKPLJ 2005-12-07
  • 打赏
  • 举报
回复
在sql与access中有关日期不同,在access是要用"#"引起来,但在sql中"'"就可以了
ybfqlyq 2005-12-07
  • 打赏
  • 举报
回复
怎麼樓主沒反應啦??跑啦??
確定有那個你要更新的記錄嗎???
yopy 2005-12-07
  • 打赏
  • 举报
回复
sql="update sd_master Set cookiess ='23445',lasttime ='#2005-12-5 12:41:57#',lastip ='127.0.0.1' where master_name='admin'"
rs.open sql,con,1,3
试试
sdsnow 2005-12-07
  • 打赏
  • 举报
回复
数据库文件能读写吗?查查.mdb的属性。
  • 打赏
  • 举报
回复
where master_name='admin'
存在这条记录吗,把where去掉试试
lnboy1003 2005-12-07
  • 打赏
  • 举报
回复
可能是时间格式的问题把
everywhen 2005-12-07
  • 打赏
  • 举报
回复
update sd_master Set cookiess ='23445',lasttime =#2005-12-5 12:41:57#,lastip ='127.0.0.1' where master_name='admin'
zhaopengfei2005 2005-12-07
  • 打赏
  • 举报
回复
是IIS的設置問題。文件夹没有写入权限,給文件夾加上every權限。
lxcooi 2005-12-07
  • 打赏
  • 举报
回复
你对数据库所在文件夹没有写入权限
phuson 2005-12-07
  • 打赏
  • 举报
回复
应该是下面这个,access的日期常量不是用引号的

update sd_master Set cookiess ='23445',lasttime =#2005-12-5 12:41:57#,lastip ='127.0.0.1' where master_name='admin'
zhanghongwen 2005-12-07
  • 打赏
  • 举报
回复
没碰到过,建议换一下数据库的联接代码及SQL的打开方式.
db="../data.asp"
set rs=server.createobject("adodb.recordset")
set conn=server.createobject("adodb.connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(""&db&"")
conn.open connstr

sql="update sd_master Set cookiess ='23445',lasttime ='2005-12-5 12:41:57',lastip ='127.0.0.1' where master_name='admin'"
rs.open sql,conn,3,3
jspadmin 2005-12-07
  • 打赏
  • 举报
回复
sql和access时间引用方法不一样,当然,如果不存在admin这条记录,也会出现这样的错误提示
创造奇迹9999 2005-12-07
  • 打赏
  • 举报
回复
是不是你的文件夹权限的问题,你在IIS里改一下USER的权限为可读写的,

因为SQL SERVER它用的是系统的管理员用户,而ACCESS用的是USER用户,

所以错误原因可能出在这里
zhangzhang3000 2005-12-07
  • 打赏
  • 举报
回复
我也遇到了这种问题
请问是什么原因

在有的机器上有这个问题
可是在有的机器上却没有这么问题
程序都是一样的
loveme2000ok 2005-12-07
  • 打赏
  • 举报
回复
更正楼上的,你试一下~

update sd_master Set cookiess ='23445',lasttime =#2005-12-5 12:41:57#,lastip ='127.0.0.1' where master_name='admin'
lonaerd 2005-12-07
  • 打赏
  • 举报
回复
update sd_master Set cookiess ='23445',lasttime ='#2005-12-5 12:41:57#',lastip ='127.0.0.1' where master_name='admin'

试一下
ajou 2005-12-07
  • 打赏
  • 举报
回复
添加IWUser 用户可更改权限
zysoft17 2005-12-07
  • 打赏
  • 举报
回复
你用的可能是NTFS的分区吧.要把存放ACCESS的目录分配权限才行.
在存放ACCESS的文件夹上点击右键,查看安全,把权限改大一些.试试
zzk8994073 2005-12-07
  • 打赏
  • 举报
回复
是不是数据库里的某些字段是自动赋值的问题?
加载更多回复(4)

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧