回 帖 发 新 帖 刷新版面

主题:为什么不能用insert,update的查询语句

我是 asp+access,使用sql语句insert into tablename (字段1) values ('字段值')的时候,报告出错:需要一个可更新的查询,使用update 语句也是这样,只能select 语句正常,这是怎么回事。我以前用这些语句时候都很正常,不得其解啊。

回复列表 (共15个回复)

沙发

上次我做也是一样,但是insert into tablename value (...)

整个记录插入不会报错滴

所以建议用ADO咯~~~~~~

板凳

注意数据库中字段的“类型”和“是否允许空字符串”

3 楼


可能是访问权限问题,请参考:

[url=http://www.programfan.com/club/post-50760.html]http://www.programfan.com/club/post-50760.html[/url]

4 楼

我觉得2楼和3楼说的都不是什么主要原因,因为上次我在本地机上试权限和数据格式都注意到了,可是就是有一些SQL语句不能用。

无奈只能用ADO提供的方法~~~~~~~~~~

5 楼

可能三楼的才是主要原因,把代码帖一部分出来看看.

6 楼

一般来讲就是权限!

7 楼

很重要的一点看看你的表明、列名是不是有关键字如有加[]

8 楼


我是win2000server,权限是admin,是使用ado对象。
dim cndata
set cndata=server.createobject("adodb.connection")
cndata.open "dbq="&server.mappath("db.mdb")&";driver={microsoft access driver (*.mdb)}"
cndata.execute "updata tablename set xx1=11 where xx2=22"
报告出错:“需要使用一个可更新的查询”,使用select 语句就正常。
以前用同样的语言一直很好。而且相同的语句,在visual basic 6.0环境下使用运行就可以,现在我没办法,操作数据库就使用vb编程了,苦恼中。

9 楼

可能是权限问题

10 楼

请你给予intenet 来宾帐户( IUSR_XXX )对db.mdb数据库文件及所在目录写入和删除的权限或者是修改的权限

我来回复

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