实现目标:查询各个部门的书库存数
Set ListRs = Conn.Execute(StrSql, , adCmdText):把所有部门的库存数数据全部存于“listRs”中
然后在msflexgrid1中点击任意一行,列如获得部门号为“R”
ListRs.Filter = "departcode=" & "'" &CStr(MSFlexGrid1.TextMatrix(j, 0)) & "'" :listRS读取的过滤条件为“部门号为 R 的库存数”
问题:按我个人的想法是过滤后获取数据速度应该是不慢的,但是反应却很慢,实在不知道为什么?请教各位高手,谢谢!!!
(查询时的记录集数据数才32条)

解决方案 »

  1.   

    可以将条件直接写入SQL语句
    引用 ADODB
    Public conn As ADODB.Connection
    conn.Open sqlconnectionstring 
    conn.CursorLocation = adUseClientdim rst as ADODB.Recordset
    dim sql as string 
    sql="select 字段 from 表名 where 条件"
    set rst=conn.execute(sql)先判断
    If rst.RecordCount > 0 Then
    这样就可以直接使用rst
    调用时直接使用 rst("字段名")
    end if
    rst.close
    set rst=nothing
    conn.close