点击“刷新”按纽后,DBGrid中的B字段的值传给A,同时B的值为0,
我用fieldbyname('A').asfloat:=fieldbyname('B').asfloat;\
fieldbyname('B'):=0;只能刷新一条记录,我想要的是刷新所有的记录,怎么实现??大家帮忙!

解决方案 »

  1.   

    用一個批處理update table name set fieldbyname('A').asfloat:=fieldbyname('b').asfloat,set fieldbyname('b')=0
    然后execsql就可以
      

  2.   

    用个循环,把所有的字段都遍历下
    for i=0 to n do 
    begin
       fieldbyname('A').asfloat:=fieldbyname('B').asfloat;
       fieldbyname('B'):=0
    end;
      

  3.   

    同意 crystaltam(crystal)的做法
      

  4.   

    建议用标准SQL语句,这样速度快。
    BEGIN
    WITH TQUERY DO 
     BEGIN
      CLOSE;
      SQL.CLEAR;
      SQL.ADD('update table TABLEname set fieldnameA=fieldnameB set fielDnameb=0');
      SQL.EXECSQL;
     END;
    END;