ADODB.Recordset的问题

hongbo163 2003-12-10 05:26:00
有两张表,通过SQL表连接从表B提取某字段值到表A
SQL语句如下:

strSQL="Select a.id,b.id1 from table1 a,table2 b where a.name=b.name"
rs.open strSQL,conn,3,3,1
do until rs.eof
rs.field("id")=rs.field("id1")
rs.update
rs.movenext
loop

结果出现错误,
[Microsoft][ODBC Microsoft Access Driver] 不能更新。数据库或对象为只读。

请问是什么原因,怎么解决?
//thx
...全文
29 点赞 收藏 7
写回复
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
DemonXHunter 2003-12-10
只能直接打开一个表进行更新把。
另外有的数据库的ODBC接口不支持更新也是可能滴。
回复
jilate 2003-12-10
我觉得ADO对数据库的更新还是用
connection 对象更新比较好
回复
yoki 2003-12-10
直接
conn.execute "insert into A(id) select id from B"
回复
liyd1978 2003-12-10
支持zhangcyu()
的确是这样
回复
czwwh 2003-12-10
用连接打开的表不能更新,只有单独打开才能更新。只有想一些变通的办法了,例如建临时表,在临时表中更改后再写回去
回复
zhangcyu 2003-12-10
你要更新表A,只能单独打开表A,不能用外连接
回复
zhangcyu 2003-12-10
在rs.field("id")=rs.field("id1")语句之前
要先加上这句:
rs.addnew
回复
发动态
发帖子
VB基础类
创建于2007-09-28

7451

社区成员

VB 基础类
申请成为版主
社区公告
暂无公告