1.因为该库已打开所以有相应的缓存区
这样操作当然快
2.也许是因为table+dbgrid是打开整个库而data是部分(按页打开)

解决方案 »

  1.   

    1 database desktop执行sql之前已经读了数据,而你没有
    2 database desktop没有一下子全部读完数据,只显示部分
      

  2.   

    打开数据库之前,先query.disablecontrols
    打开数据库之后,再query.enablecontrols
    速度会明显比原来快
      

  3.   

    问题是:
    1、用query查询本地库时,怎样才能让他用到索引?我知道查询远程sql库是自动使用索引的。
    2、怎样设置table,可以在filter时用索引提高速度?
      

  4.   

    对于本地库,在执行一个 SQL 查询时是很好时的,特别是数据量大的时候。
    本地库 SQL 查询是在使用的数据引擎中完成的(ADO、BDE),而数据引擎主要并不是为 SQL 查询而设计的,所以它的 SQL 查询分析执行功能相对 SQL 服务器就简单多了,它的 SQL 查询往往要将整个表的数据全部调入内存为了执行查询。所以主要的时间花在了装入表数据上。
    但是,如果你是直接打开表,它就进行一个优化:将表数据分批分叶的调入内存。所以感觉上要快了。
      

  5.   

    本地库的sql查询难道就不用索引的吗?能不能强制使用?