ACEESS数据库问题

ourme 2006-09-19 11:17:12
请问高手如何在ACEESS中实现如下操作:
A表:
kh sw
0001 1
0005 2
....
B表
kh sw bb
0001
0002
....
0005
....
将B表中sw项更新为A表中对应的sw?请问如何办。
...全文
146 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangl_cn 2006-09-20
  • 打赏
  • 举报
回复
update 表B Inner Join 表A on 表A.kh=表B.kh set 表B.sw=表A.sw

在ACCESS2003下测试通过
hanjie216 2006-09-19
  • 打赏
  • 举报
回复
update B set B.SW=A.SW where B.kh=A.kh
zhangl_cn 2006-09-19
  • 打赏
  • 举报
回复
update 表B Inner Join 表A on 表A.kh=表B.kh set 表B.sw=表A.sw
ourme 2006-09-19
  • 打赏
  • 举报
回复
我要求是在ACEESS中实现啊,不是在Delphi中,
ourme 2006-09-19
  • 打赏
  • 举报
回复
也不行啊,报在"from a,b where a.kh=b.kh"中操作符丢失
findu 2006-09-19
  • 打赏
  • 举报
回复
A表.first
B表.first
while not A表.eof do
begin
while not B表.eof do
begin
if B表.fieldbyname('kh').asstring = A表.fieldvalue['kh'] then
begin
A表.fieldbayname('sw') := B表.fieldvalue['sw'];
A表.next;
B表.next;
break;
end
else
B表.next;
end;
end;
zhangl_cn 2006-09-19
  • 打赏
  • 举报
回复
搞错了,如下:
update B表 set sw=a.sw from A表 a, B表 b where a. kh=b.kh

zhangl_cn 2006-09-19
  • 打赏
  • 举报
回复
update A表 set sw=b.sw from A表 a, B表 b where a. kh=b.kh

ourme 2006-09-19
  • 打赏
  • 举报
回复
update A表 set sw=B表.sw from B表 where A表. kh=B表.kh

运行报错,要求输入a.sw的值
ourme 2006-09-19
  • 打赏
  • 举报
回复
不行啊,SQL如何写啊?
ron_xin 2006-09-19
  • 打赏
  • 举报
回复

update A表 set sw=B表.sw from B表 where A表. kh=B表.kh
andyzhou1101 2006-09-19
  • 打赏
  • 举报
回复
sql语句
ourme 2006-09-19
  • 打赏
  • 举报
回复
老大啊,都不行啊

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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