问题如下:
 sql语句不定,如可以为:select id,spdm,spmc from spb,或:
 select id,name,type from ghcsb
 我想通过一个判断来确定它的查询结果中是否含有某一字段,如何做到呢?
 大侠们,快快出手吧.

解决方案 »

  1.   

    对query 进行 
    try
     query1.fieldbyname('yourName').value;
    except
    end;的操作
    或者用会话吧
      

  2.   

    这样子:
    query1.close;
    query1.sql.text:='select id,name,type from ghcsb';
    query1.open;
    for i:=0 to query1.Fields.count-1 do
      if uppercase(query1.fields[i].FieldName)='ID' then
      begin
        showmessage('查询结果中有ID字段');
        break;
      end;
      

  3.   

    var b:boolean;
    s:string;//你要找的字段名
    begin
     b:= false;
     for i := 0 to SQLDataSet1.FieldCount - 1 do
       if (SQLDataSet1.Fields[i].FieldName = s) then
         begin
           b:=true;
           break;
         end;
    results := b;//为真表示有
      

  4.   

    通过adoquery1.Fields.Count直到有多少列
    然后做循环
    i从0开始循环到count-1
    然后根据梅列的名称判断
    adoquery1.FieldList[i].FieldName;
      

  5.   

    若是sqlserver可以使用从sqlcolumns中查到