我用ADODB连接SQLSERVER,语句如下
with adodc1
.ConnectionString="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog="+DataBaseName+";Data Source="+ServerName
.RecordSource="select * from a,b where a.name=b.name or a.name=b.name1 or a.name=b.name2"
.Refresh
end with
a表中有17万多条记录,b表中有8万多条记录
在执行.Refresh时长时间等待,大约2,3分钟,然后出现 超时已过期 错误 
我想问一下出现这个问题的大致原因,原来执行时一直是好的,数据量也差不多
服务器的配置还可以,双CPU,执行时服务器的资源占用率不是很高

解决方案 »

  1.   

    它是一条一条刷新的呀!当然慢了。
    你把执行条件写少一点,会快一点, 
    要不没有其它办法了。
    再不换成SQL的数据库了。
      

  2.   

    建议操作ADO数据对象进行数据记录的分页处理,我想能解决,大记录不能采用控件操作的
      

  3.   

    SQL查询条件中and关键字可以优化,而or关键字就不行了。用到or的时候要小心使用,除非没有别的办法。
      

  4.   

    to yanzwen(nick) 
    我刚学VB不长,怎么进行分页处理?