我在书上看到的保存是这样的:
var
str:string;
begin
str:=insert into ……edit1.text……;
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add(str)
adoquery1.open;可是:现在看程序确实调这个函数,谁能帮我解释一下谢谢!!!!!!!!
  procedure TfrmZZ.getInfo(c :TComponent;fieldName:string);
var
  i:integer;
  fieldValue:string;
begin
  if c is TEdit then
     TEdit(c).Text:=trim(query.fieldbyname(fieldName).AsString)
  else if c is Tmaskedit then
    begin
      try
        Tmaskedit(c).Text:=query.fieldbyname(fieldName).asstring;
      except
        begin
        end;
      end;
    end
  else if c is Tcombobox then
    begin
      fieldValue:=trim(query.fieldbyname(fieldName).AsString);      for i:=0 to tcombobox(c).Items.Count-1 do
        begin
           if trim(copy(tcombobox(c).Items[i],1,pos('--',trim(tcombobox(c).Items[i]))-1))=fieldvalue then
             begin
               tcombobox(c).ItemIndex:=i;
               break;
             end;
        end;
    end;
end;

解决方案 »

  1.   

    开始
      如果 c 然后是 TEdit
         TEdit.(c)本文:=整齐.(query.fieldbyname(fieldName)AsString)
      别的如果 c 然后是 Tmaskedit
        开始
          试
            Tmaskedit.(c)本文:=query.fieldbyname.(fieldName)asstring;
          除
            开始
            结束;
          结束;
        结束
      别的如果 c 然后是 Tcombobox
        开始
          fieldValue:=整齐.(query.fieldbyname(fieldName)AsString);      因为 i:=0 到 tcombobox.(c)项目。计数 -1 做
            开始
               如果整齐.(副本(tcombobox(c)项目[i],1,pos.('--',整齐(tcombobox(c)项目 [i]))-1))= fieldvalue 然后
                 开始
                   tcombobox.(c)ItemIndex:=i;
                   打破;
                 结束;
            结束;
        结束;
    结束;
      

  2.   

    你确实是新新手呀,保存数据的方法是:
    query1.close;
    query1.sql.text:='select * ftom tab';
    query1.open;query1.append; //如果修改数据,query1.edit;
    query1.fieldbyname('aa').asstring := edit1.text;
    ...
    query1.post;这样就可以了,也不知道你的哪个例子从那本树上看到的,误人子弟!!!
      

  3.   

    或者可以:
    query1.close;
    query1.sql.clear;
    query1.sql.add('select * from 数据表');
    query1.open;
    query1.append;
    query1.fieldbyname('数据表中字段').asstring:= '需要加入的值';
    ……
    ……
    query1.post;
      

  4.   

    query1.close;
    query1.sql.clear;
    query1.sql.add('insert into 数据表(数据表中字段) values(:val)');
    query1.Parameters.parabyname('val').value := Edit1.text;
    query1.exesql;
    或者
    query1.close;
    query1.sql.clear;
    query1.sql.add('select * from 数据表');
    query1.open;
    query1.append;
    query1.fieldbyname('数据表中字段').asstring:= '需要加入的值';
    ……
    ……
    query1.post;
      

  5.   

    query1.close;
    query1.sql.clear;
    query1.sql.add('insert into 数据表(数据表中字段) values(:val)');
    query1.Parameters.parabyname('val').value := Edit1.text;
    query1.exesql;
    或者
    query1.close;
    query1.sql.clear;
    query1.sql.add('select * from 数据表');
    query1.open;
    query1.append;
    query1.fieldbyname('数据表中字段').asstring:= '需要加入的值';
    ……
    ……
    query1.post;