我用的是SQL 2000数据库,不知为什么我在按钮事件中就是简单执行了AdoQuery1.Close及AdoQuery1.Open两个操作,数据库中的数据要两秒多的时间才能显示出来,感觉速度好慢,数据库中只有一百多条记录,这是怎么回事呀

解决方案 »

  1.   

    你直接用adoquery连数据库还是用adoconnection连?
      

  2.   

    如果没有通过adoconnection连接 ,打开数据表前有连接数据库动作发生,所以慢。
      

  3.   

    对,应该用adoconnection连接数据库,不要直接用adoquery连数据库。
      

  4.   

    同意楼上:应该用adoconnection连接数据库,不要直接用adoquery连数据库。
      

  5.   

    问题是我是用Adoconnection连接数据库的呀
      

  6.   

    问题在已经不是第一次,adoconnection之前已连接好了的,在本窗体装载时执行了adoquery1.open操作,后在一按钮点击事件中执行adoquery1.close与adoquery1.open操作,数据显示就好慢
      

  7.   

    ADO连接数据库应该是比较快的,但BDE在处理大量数据时会比ADO要快很多
      

  8.   

    同意楼上的
    数据量大的时候一般用BDE
    但是楼主的意思
    他的那种情况也太慢了
    可能是硬件问题
    hoho~~~~
      

  9.   

    你的SQL语句尽量不要用*,而是逐条写出字段,这样能在一定程度上提高性能.
      

  10.   

    是不是你的数据里面带有image类型的字段?如果带有,你试试不select 该类型的字段会不会也是这样慢?
    还有,你在sqlserver所在那台机执行程序也是一样慢吗?
      

  11.   

    我就是在sqlserver所在那台机执行的程序.
    我的数据中是带有image类型的字段.
      

  12.   

    带有image类型的字段,是二进制形式的,一般要用流的形式读出来,会慢些。
      

  13.   

    照楼主说的连接上应该没问题,怀疑与sql语句的效率有关
      

  14.   

    带有image类型的字段的,千万不要动不动就Select * ,严重托慢速度,建议能定位到唯一一条记录时,再select *
      

  15.   

    同意楼上的,
      不要用select * 
    把字段一一写出来。