procedure TMainForm.Button1Click(Sender: TObject);
var
  s:string;
  i:integer;
begin
  s:='select 产品.名称 from 产品';
  ADOQ.Close;    ///////////////////
  ADOQ.SQL.Clear; //////////////////////
  ADOQ.SQL.Add(s);
  Adoq.Open;
  i:=Adoq.recordcount;
  While i>0 do
    begin
      s:=adoq.Fields[0].AsString;    //(1)
      DBComboBox1.Items.Add(s);
      Dec(i);
    end;
end;

解决方案 »

  1.   


    ‘Fields[0].AsString’转换成string类型
      

  2.   

    抱歉,我向来不喜欢qq这类的,如果需要 [email protected]数据库中可存取各种数据,用asstring来取得string(如果其中放的是string的话)
    关于出错是因为,sql属性在使用前应该clear,否则语句变成'select 产品.名称 from 产品 'select 产品.名称 from 产品',怎么能正确执行呢?
      

  3.   

    让我牛老弟回答你把:显示的时候是 : 
    S:=’SELECT  Table.自段名 FROM  Table’ Table:是表名
    还有Fields[0].AsString 代表着第0各自段中光标所指
    位置的记录