一个动态的数据集Tdataset,每次操作都不一样,我怎样判断其中是否有字段XXX,谢谢,如果有,我就用FIELDBYNAME将其值取出,没有则进行别的操作,如果不判断将会报错。谢谢

解决方案 »

  1.   

    ADOQuery1.FieldList.Find('field');
    如果有,则返回此字段,否则返回nil
      

  2.   

    if ADOQuery1.FieldList.Find('field') <> nil then
      //找到
    else
      //无此字段
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
     i:integer;
    begin
      for i := 0 to ADOQuery1.FieldCount - 1 do
      if ADOQuery1.Fields[i].FieldName = 'XXX' then
      begin
        ShowMessage('有这个字段');
        Break;
      end;
    end;
      

  4.   

    一个动态的数据集Tdataset,每次操作都不一样,我怎样判断其中是否有字段XXX,谢谢,如果有,我就用FIELDBYNAME将其值取出,没有则进行别的操作,如果不判断将会报错。谢if TDataset.fieldlist.indexof('字段名')=-1 then 不存在
    else
    存在
      

  5.   

    if ADOQuery1.FieldList.Find('field') <> nil then
      //找到
    else
      //无此字段
    if TDataset.fieldlist.indexof('字段名')=-1 then 不存在
    else