例如我的一个数组
ArrLxsxzd[i,1];
其中存放了有:
ArrLxsxzd[1,1]=name;
ArrLxsxzd[2,1]=Email;
ArrLxsxzd[3,1]=MSN;
ArrLxsxzd[4,1]=UC;
ArrLxsxzd[5,1]=URL;
ArrLxsxzd[6,1]=address;
ArrLxsxzd[7,1]=tel;
ArrLxsxzd[8,1]=fax;
ArrLxsxzd[9,1]=phone;
ArrLxsxzd[10,1]=qq;
for i:=1 to totalLxsxCount do
    begin
       common_name:= ArrLxsxzd[i,1];
       adoquery1.Close;
       adoquery1.SQL.Clear;
       adoquery1.SQL.Add('select common_name aa from hrp_fp_com_lxrwb where ID ='''+Global_RoutineID+'''');
       adoquery1.Open;
       if adoquery1.RecordCount>0 then   //common_nameValue是通用字段名值
           common_nameValue:=adoquery1.FieldByName('aa').AsString
       else
           common_nameValue:='';
         ArrLxsxzd[i,2]:=common_nameValue;
    end;我想实现的效果如下:sql语句:
adoquery1.Close;
  adoquery1.SQL.Clear;
  adoquery1.SQL.Add('select name,Email,MSN,UC,URL,address,tel,fax,phone,qq from hrp_fp_com_lxrwb where ID='''+Global_RoutineID+'''');
  adoquery1.Open;
。但是这个出现错误说common_name有错
这个我知道
怎么解决利用动态数组存取数据库中的字段,并参与查找

解决方案 »

  1.   

    adoquery1.SQL.Add('select '+common_name+' aa from hrp_fp_com_lxrwb where ID ='''+Global_RoutineID+''''); 
      

  2.   

    adoquery1.Close; 
      adoquery1.SQL.Clear; 
      adoquery1.SQL.Add('select '+ArrLxsxzd[1,1]+','+ArrLxsxzd[2,1]+','+ArrLxsxzd[3,1]+','+ArrLxsxzd[4,1]+','+ArrLxsxzd[5,1]+','+ArrLxsxzd[6,1]+','+ArrLxsxzd[7,1]+','+ArrLxsxzd[8,1]+','+ArrLxsxzd[9,1]+','+ArrLxsxzd[10,1]+' from hrp_fp_com_lxrwb where ID='''+Global_RoutineID+''''); 
      adoquery1.Open; //common_nameValue:=adoquery1.FieldByName(ArrLxsxzd[1,1]).AsStrin
      

  3.   


    for i:=1 to totalLxsxCount do 
        begin 
          common_name:= ArrLxsxzd[i,1]; 
          adoquery1.Close; 
          adoquery1.SQL.Clear; 
          adoquery1.SQL.Add('select '+common_name+' aa from hrp_fp_com_lxrwb where ID ='''+Global_RoutineID+''''); 
          adoquery1.Open;           //注意上面这句 
          if adoquery1.RecordCount>0 then  //common_nameValue是通用字段名值 
              common_nameValue:=adoquery1.FieldByName('aa').AsString 
          else 
              common_nameValue:=''; 
            ArrLxsxzd[i,2]:=common_nameValue; 
        end;