SQL+DELPHI字段:m1 m2 m3 m4
  什:01 02 03 04
     05 06 07 08现在只知道值06,我想跟据06得到这个字段的字段名称(M2).请问如何处理呀.

解决方案 »

  1.   

    同意foxyy8888(古来圣贤皆寂寞,惟有饮者留其名!) ,
    你可以使用adoquery1.locate('m1', '06', [])
    adoquery1.locate('m2', '06', [])
    adoquery1.locate('m3', '06', [])
    adoquery1.locate('m4', '06', [])
    来依此判断,比自己循环可能要慢一些,但比较简单.
      

  2.   

    值没有重复的就好办了.不知道你用的什么数据控件,以ClientDataset为例:procedure TForm1.Button1Click(Sender: TObject);
    var
      iLoop : Integer;
    begin
      for iLoop := 0 to ClientDataSet1.Fields.Count - 1 do
      begin
        if ClientDataSet1.Fields[iLoop].AsString = '06' then
          ShowMessage(ClientDataSet1.Fields[iLoop].FieldName);
      end;
    end;
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      i: Integer;
    begin
      with ClientDataSet1 do
      begin
        First;
        While not Eof do
          begin
            For i := 0 to FieldCount-1 do
              begin
                if Fields[i].AsString = '06' then
                  begin
                    Showmessage(Fields[i].FieldName);
                    Break;
                  end;
              end;
            Next;
          end
      end;  
    end;
      

  4.   

    一般情况下,dataset组件中都会保存有字段名的,应该从属性中都可以得到,你自己多试试,查查帮助,
      

  5.   

    通过ADOQuery1.Fields.GetFieldNames();过程搞定