我的数据用ADO动态链接,是ACCESS数据库data.mdb,数据库中有几个表,其中一个表名是'data',数据用DBRGID连显示,但用如下查询语句,程序并不出错,只是DBRGID显示数据毫无反应,还是显示全部的数据,没筛选出要查的数据,本人对SQL的使用不了解,请教问题出在何处?
with adoquery1 do
  begin
    Close;        
    sql.clear;
    sql.add('SELECT * FROM data where id<=10');
    open;
  end;

解决方案 »

  1.   

    with adoquery1 do
      begin
        Close;        
        sql.clear;
        sql.add('SELECT * FROM [data] where [id]<=10');
        open;
      end;
      

  2.   

    看看是不是没有设置好
      DBGrid1.DataSource:=DataSource1;
      DataSource1.DataSet:=ADOQuery1;with adoquery1 do
    begin
      Close;        
      sql.clear;
      sql.add('SELECT * FROM [data] where [id]<=10');
      open;end;
    再看看是不是ADOQuery1.RecordCount>0
      

  3.   

    //下面代码没有问题
    //Delphi6+windows2003+ACCESS2000procedure TForm1.Button1Click(Sender: TObject);
    begin
      with ADOQuery1 do
      begin
        Close;
        sql.clear;
        sql.add('SELECT * FROM data where id<=10');
        open;
      end;
      self.DataSource1.DataSet := self.ADOQuery1;
      self.DBGrid1.DataSource := self.DataSource1;
    end;
      

  4.   

    DBRGID要连接到所用的查询上啊
      

  5.   

    看看
    是否有组件:DataSource1;
    DataSource1的属性DataSet是否设置好;
    DBRGID的属性DataSource是否设置好。