Foxtable(狐表)用户栏目专家坐堂 → Laod加载表数据变慢问题


  共有2291人关注过本帖树形打印复制链接

主题:Laod加载表数据变慢问题

帅哥哟,离线,有人找我吗?
z769036165
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:752 积分:5363 威望:0 精华:0 注册:2012/10/5 21:53:00
Laod加载表数据变慢问题  发帖心情 Post By:2020/6/19 16:44:00 [只看该作者]

情况:
表A存在10万行数据,全部加载后
在另外的窗口中
存在表B和表C。其中表C与表B的某项关联
设置点击表B行时动态Load加载对应的表C项(数据不多,1~20行左右)

问题:
在表A加载10万时,窗口中点击表B行,load加载表C项变慢了,而且卡顿,点窗口的其他功能也都卡顿
在不在加载表A时,窗口中点击表B行,load加载表C非常快,不卡顿

请问这是什么情况?这表A与表B与表C没任何关系,表A表事件中无任何代码,表B与表C中,只有表B有一行绘制,其他事件代码都没有。

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106273 积分:540494 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/19 16:50:00 [只看该作者]

加载数据是在主线程的,加载过程中会影响整个foxtable程序的运行

 回到顶部
帅哥哟,离线,有人找我吗?
z769036165
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:752 积分:5363 威望:0 精华:0 注册:2012/10/5 21:53:00
  发帖心情 Post By:2020/6/19 16:55:00 [只看该作者]

我说的情况是加载全部完成后,只是纯粹的表中存在10万行数据时,其他表的load加载就变慢
[此贴子已经被作者于2020/6/19 16:56:14编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106273 积分:540494 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/19 17:01:00 [只看该作者]

表B、表C是不是有表达式列,或者是表事件和表A的数据关联?

 回到顶部
帅哥哟,离线,有人找我吗?
z769036165
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:752 积分:5363 威望:0 精华:0 注册:2012/10/5 21:53:00
  发帖心情 Post By:2020/6/19 17:02:00 [只看该作者]

我测试了下
Dim st As Date = Date.Now
DataTables("表C").LoadFilter = "编号 = 'A1'"
DataTables("表C").Load
MessageBox.Show("耗时: " & (Date.Now - st).TotalSeconds & "秒")
在表A存在10万行数据时,显示耗时0.4418689s
在表A不存在行数据时,显示耗时0.0388956s
差了将近10倍


 回到顶部
帅哥哟,离线,有人找我吗?
z769036165
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:752 积分:5363 威望:0 精华:0 注册:2012/10/5 21:53:00
  发帖心情 Post By:2020/6/19 17:03:00 [只看该作者]

没有任何关联,表事件都特意看了,都没有,就是从sql数据库加载过来的表,没有表达式列

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106273 积分:540494 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/19 17:08:00 [只看该作者]

数据多肯定会对数据库的使用有影响。不管什么数据库都一样

 回到顶部
帅哥哟,离线,有人找我吗?
z769036165
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:752 积分:5363 威望:0 精华:0 注册:2012/10/5 21:53:00
  发帖心情 Post By:2020/6/19 17:12:00 [只看该作者]

这个是load加载进狐表中,而且之前的表都加载完了,在狐表中不加载这么多行数据,就很快,这个应该和数据库影响没关系吧,我用新创建的项目测试,发现也是这样

 回到顶部
帅哥哟,离线,有人找我吗?
z769036165
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:752 积分:5363 威望:0 精华:0 注册:2012/10/5 21:53:00
  发帖心情 Post By:2020/6/19 17:14:00 [只看该作者]

就是在新项目中加载一个外部sql数据中10万行的表,
然后在新项目的内部表进行load加载,就变慢10倍以上,这个表和外部表都没点关系啊

 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106273 积分:540494 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/19 17:19:00 [只看该作者]

数据加载后都放在内置的数据库里,所有表格已经加载的数据都在一个内置的数据库里。内置的数据库是一个access数据库,数据越多对项目肯定有效越大,不是非常必要不建议一次加载这么多数据,按需加载,或者分页加载

 回到顶部
总数 12 1 2 下一页