Dim mysql As String
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data\LiaoTianData.mdb;Jet OLEDB:DataBase password=a1234;"
rs.CursorLocation = adUseClient
mysql = "select * from LTdata Where uTime like '%" & Str(Date) & "%' order by uTime "
rs.Open mysql, cn, adOpenDynamic, adLockOptimistic
Do While Not rs.EOF
    txtLiaoTianJiLu.Text = rs.Fields(0) + "->" + rs.Fields(1) + "(" + Right(Str(rs.Fields(3)), 11) + ")" + Chr(13) + Chr(10) + "    " + rs.Fields(2) + Chr(13) + Chr(10) + txtLiaoTianJiLu.Text
    rs.MoveNext
Loop
rs.Close
   以上的访问效率好差哟,哪位有更好的方法给我介绍一个,谢谢了

解决方案 »

  1.   

    效率怎么差了◎==========================
    免费的学习、交流、源码、工具下载网站,欢迎大家访问!
    http://www.j2soft.cn/
      

  2.   

    mysql = "select * from LTdata Where uTime like '%" & Str(Date) & "%' order by uTime "
    rs.Open mysql, cn, adOpenDynamic, adLockOptimistic
    Do While Not rs.EOF
        txtLiaoTianJiLu.Text = rs.Fields(0) + "->" + rs.Fields(1) + "(" + Right(Str(rs.Fields(3)), 11) + ")" + Chr(13) + Chr(10) + "    " + rs.Fields(2) + Chr(13) + Chr(10) + txtLiaoTianJiLu.Text
        rs.MoveNext
    Loop
    ----------------------
    直接用控件的TEXT属性肯定慢了,改用数组操作试试:Dim x() as string,i as long
    mysql = "select * from LTdata Where uTime like '%" & Str(Date) & "%' order by uTime "
    rs.Open mysql, cn, adOpenDynamic, adLockOptimistic
    i=0
    Do While Not rs.EOF
    redim preserve x(1 to i)
        x(i) = rs.Fields(0) & "->" & rs.Fields(1) & "(" & Right(Str(rs.Fields(3)), 11) & ")" & vbcrlf & vbtab &  rs.Fields(2) 
        rs.MoveNext
    Loop
    txtLiaoTianJiLu.Text=join(x,vbcrlf)
    erase x
      

  3.   

    将rs.Open mysql, cn, adOpenDynamic, adLockOptimistic.改为
    rs.Open ,mysql,cn , adOpenForwardOnly, adLockReadOnly, adCmdText
    sql语句不要用*,要哪个字段就选哪个。
    Do While Not rs.EOF 改成Do Until rs.EOF
    rs.CursorLocation = adUseClient改为服务器端。或者把这句去掉。