ARecordSet := CreateOleObject('ADODB.RecordSet');ADODataSet1ADOQuery1AdoCommand1
都怎么作.那种方法比较好.

解决方案 »

  1.   

    ADODataSet1  返回一个DATASET数据,可以当一个数组用,ADOQuery1 不返回值,用作查询AdoCommand1 是一个COMMAND,要指定这个COMMAND执行的SQL,即COMMAND.COMMANDTEXT。各有不同的用处,至于说哪个好,要看你想做什么。
    如果想查寻一些数据,并返回数据,对其进行处理,用DATASET就可以了。  ADOConnection1.ConnectionString := 'xxxxx';
      ADODataSet1.Connection :=  ADOConnection1;
      ADODataSet1.CommandText := 'SELECT * FROM xxx';
      ADODataSet1.Open;  while ADODataSet1.Eof <> ture do
      begin    //add your code here    ADODataSet1.Next;
      end;  ADODataSet1.Close;
      

  2.   

    \楼主的标题和你的问题内容不一致啊?答复标题:
       var 
           test;string;
       begin
         ...
         ADOquery.sql='select distinct column from table where ...'
         ...
         test:=ADOquery.field[0].value
       end;
      

  3.   

    个人认为用AdoQuery比较好,它结合了Dataset和Command的好处,可以对数据进行查询修改等操作,
    控制起来也比较方便灵活
      

  4.   

    var 
    test;string;
    ....................................................
    ARecordSet.Open('select * from company where ID='+id);
    if not ARecordSet.Bof and not ARecordSet.eof then
    begin
    test:=ARecordSet.Fields['CompanyName'].Value;
    end;
      

  5.   

    一般不用ADOCommand来返回数据吧?