在VB6中通过DAO优化高延迟网络上的开放访问数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在VB6中通过DAO优化高延迟网络上的开放访问数据库相关的知识,希望对你有一定的参考价值。

随着时间的推移转换到新平台的继承应用程序。但是,在此期间寻找简单的修复程序来提高高延迟连接的性能。在某些情况下,花费几秒钟的操作在远程站点上可能需要10分钟。

经过分析,主要问题是用DAO打开了数百次相同的记录集,每次尝试打开记录集都会启动一个回调文件共享托管MDB文件的回调。由于连接的高延迟,这些多次呼叫是昂贵的操作。

MDB文件本身通常很小,通常为几MB,文件只能为打开文件的用户打开。

Dim db As DAO.Database
Dim rs As DAO.Recordset

Set db = DAO.OpenDatabase("<path to mdb>", True, False, "")
Set rs = db.OpenRecordset("Data")

有关更好地缓存数据或减少网络流量以及最少重新编码的选项的任何建议。

虽然不需要使用DAO,但理想情况下,任何替代方法都很容易与DAO交换。

答案

此设置超出了建议的用法。至少,WAN连接应该通过高速低延迟光纤连接。

然而,可以工作的是通过OneDrive同步两端的文件夹,因为同步文件是在本地缓存和访问的。当然,在这种情况下,只有一个用户可以同时使用数据库,因为您无法控制同步和何时发生。

以上是关于在VB6中通过DAO优化高延迟网络上的开放访问数据库的主要内容,如果未能解决你的问题,请参考以下文章

VB6 数据库上的 DAO 3.6 问题

在android中通过wifi访问连接在本地网络上的打印机

VB6 - DAO - 存储过程

UPDATE 查询中的错误 - VB6 DAO 访问

dao350.dll 会在内存中损坏并损坏新连接吗?

在 VB6 中通过 COM 处理在 .NET 类上公开的事件