以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]分页加载慢  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=172590)

--  作者:天一生水
--  发布时间:2021/10/20 22:47:00
--  [求助]分页加载慢
老师好!
问两个问题,请指教:

1、数据库是阿里云上的sqlserver数据库,窗口表采用分页加载。数据总量百万行时,加载都是很快的,即使分页的每页是5000行,也是秒加载。
如果数据量达到1000万行以上时,即使分页的每页是100行,也会卡得弹出“查询超时”窗口。
这种情况,我把数据库和项目同时放在本机上测试也是一样。
请问是不是代码写的有问题,我的加载代码写在点击目录树节点的事件中:

Dim Filter As String
If e.node.Text = "加载所有数据" Then
    Filter = ""
Else
    Dim dr As DataRow = e.Node.DataRow
    Select Case e.Node.Level
        Case 0
            Filter ="[代码] = \'" & dr("代码") & "\'"
    End Select
End If

With DataTables("股票日线")
    .LoadFilter = Filter \'设置加载条件
    .LoadPage = 0 \'加载第一页
    .LoadTop = e.Form.Controls("ComboBox行数").text      \'每页100行
    .Load()
    e.Form.Controls("TextBox1").Value = 1 & "/" & .TotalPages
End With
e.Form.Controls("Table1").Table.Sort = "日期"

2、点击节点后,我想按照日期排序后,再分页,应该怎样处理?


图片点击可在新窗口打开查看此主题相关图片如下:截屏图片 (3).jpg
图片点击可在新窗口打开查看


--  作者:chen37280600
--  发布时间:2021/10/20 22:58:00
--  
那你直接写sql,分页查询,也会超时吗?如果也是超时,那已经不是狐表的问题,你问的是数据库DBA工程师的问题,分库分表?
--  作者:有点蓝
--  发布时间:2021/10/21 8:45:00
--  
给[代码]列加上索引。

按知道顺序加载看LoadOrder:http://www.foxtable.com/webhelp/topics/1928.htm