我用ADO连接ACCESS的数据库,利用DBGRID显示数据,由于简单,利用ADOTable1FilterRecord查询数据,利用ADO 的什么属性或函数可以返回查询结果的数目?

解决方案 »

  1.   

    如果你设置了FILTER的话,利用RECORDCOUNT属性返回的是所有的记录数,所以不能用这个属性,当然,如果FILTER属性为FALSE的话,可以用recordCount属性得到记录数,否则你可以用如下的代码 :
    i := 0;
    with adoquery1 do
    begin
      first;
      while not eof do
      begin
        Inc(i);
      next;
      end;
    end
      

  2.   

    我觉得应该是不用转换的,TQuery,TTable,TAdoQuery,TAdoTable都有recordcount属性的。
      

  3.   

    To killlaoli(菜鸟)你说的是返回数据库总的记录数,我现在需要的是符合条件的数量,用DBGRID显示的。
      

  4.   

    to Drate(鸟窝里的虫) 
    ...如果你设置了FILTER的话,利用RECORDCOUNT属性返回的是所有的记录数,所以不能用这个属性.....你确定吗?我试了一下,完全可以啊。
      

  5.   

    to sfxllj() 
    应该没有问题,你试一下,自然就有结果了。
    你想,当你给table设置filter时,table内的记录自然就少了,而recordcount也自然就少了,当数据集内容有变化时,recordcount自然也就变了嘛。