我有一个activeX树视图控件,它有4个级别的节点(子节点),每个节点都与一个单独的表有关,该表存储在数据库的后端(内部服务器)。这个树视图需要3个查询和4个dlookup。
随着数据库开始变得高度填充,具有树视图控件的表单加载缓慢(10秒)。我想加快这个加载时间,我认为转换到ADO是我至少需要考虑的事情。
这是唯一真正加载4个表格的大量数据的形式,我想我可能需要将查询记录集转换为ADO?
我对ADO或其应用最佳的地方了解不多,但是因为我使用的是activeX控件,它可能是最适合的吗?我在此表单上仅使用了DAO.recordset
,因为可用的各种参考VBA使用它。
ADO更适合这种情况吗?
使用ADO会加快表单的加载时间吗?
将VBA中使用的记录集转换为ADO是否很复杂?
注意:我不完全确定如何将我的VBA代码转换为ADO记录集,但如果它不合适我就不会去学习它了
答案 0 :(得分:0)
快速加载树视图的“技巧”是双重的
a)你应该保存/计算“等级数”(0 =地面等级, 预先1等),以便你有方便的时候 加载,以便您可以一步加载整个树而不用 递归搜索。我个人总是有一个单独的本地人 treeview-table包含所有内容,尤其是 电平数
b)在加载到数组之前加载表信息并从中加载 那里。最好的问候克劳斯