求教一SQL语句(50分)

  • 主题发起人 主题发起人 aszou
  • 开始时间 开始时间
A

aszou

Unregistered / Unconfirmed
GUEST, unregistred user!
Access数据库:
表A :字段为:XMID,SVAL;
表B :字段为:BGID,VAL1,VAL2,VAL3,VAL4……VAL90;

如何更新表A的字段“SVAL”,当 A.FieldByName('XMID').AsInteger=i时:
A.FieldByName('SVAL').Asstring=B.Fields.Asstring;
即用B的一行更新A的一列。

我用上面的方法可以实现,不过循环使用edit,post方法,速度太慢,
想用SQL语句解决,请指教!
 
query1.sql:='update 表A sval
=b.val'+Intostr(i)+' from 表b b where b.xmid='+Intostr(i);
 
使用存储过程:
update tablea set sval=(select @v_fieldname from tableb) where xmid=@v_i)
在程序使用事务,做循环调用,传两个参数@v_fieldname、 @v_i进去
 
to thong_517:
在Access中能使用存储过程吗?如何使用?
 
用明细表建立关联,当主表数据更新事他会自动完成的。。。
 
建立关联就行了.在ACCESS中的关系中设定.
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
D
回复
0
查看
867
DelphiTeacher的专栏
D
D
回复
0
查看
836
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部