我的一段代码,实现表中一属性的值加一(onclick事件)
procedure TForm4.Button1Click(Sender: TObject);
var
begin   
 table1.Active:=true;
 table1.Append;
table1.fieldbyname('使用次数').asstring:=inttostr(strtoint(table1.fieldbyname('使用次数').asstring)+1);
   table1.Post;
end;
总是出错,请指正

解决方案 »

  1.   

    多了一个var
    罗嗦
    table1.fieldbyname('使用次数').asFloat:= table1.fieldbyname('使用次数').asFloat+1
    另外究竟是修改还是插入?
      

  2.   

    procedure TForm4.Button1Click(Sender: TObject);
    var
      use_count:integer;
    begin   
     table1.Active:=true;
     use_count:=table1.fieldbyname('使用次数').asinteger;
     table1.Append;
     table1.fieldbyname('使用次数').asinteger:=use_count+1;
      table1.Post;
    end;
      

  3.   

    procedure TForm4.Button1Click(Sender: TObject);
    var
    begin   
     table1.Active:=true;
     table1.edit;  //处于修改状态才行的~~~
     table1.Append;
    table1.fieldbyname('使用次数').asstring:=inttostr(strtoint(table1.fieldbyname('使用次数').asstring)+1);
       table1.Post;
    end;
      

  4.   

    是关于修改的
    我是对dbgrid中选中的一行的‘使用次数’+1
    另外,如果使用query的话又怎么样呢
      

  5.   

    刚才忘了删除var了不好意思啊
    这句var也不要不然编译的时候会出错的~~
      

  6.   

    to pdcdiy163(DIY)
    若是修改就多了句table1.append,若是插入就多了句table1.edittable1.Active:=true;
    table1.edit;  //处于修改状态才行的~~~
    table1.fieldbyname('使用次数').asinteger:=table1.fieldbyname('使用次数').asinteger+1;
    table1.Post;