通过链接到Access数据库的ODBC数据源进行数据访问速度较慢

时间:2012-09-12 13:05:06

标签: ms-access odbc windows-7-x64

我公司开发了一个使用Visual Basic 6的应用程序 应用程序通过ODBC数据源使用Access数据库 Access数据库是扩展名为“.mdb”的文件。

在以下环境中运行应用程序时,我们没有注意到任何缓慢的数据访问:

  • 操作系统:Windows 7 32位。
  • 已安装的MS Access版本:Access 2007。
  • OBDC数据源使用的访问驱动程序:Microsoft Access驱动程序(* .mdb)版本6.01.7601.17632。

但是我们注意到在以下环境中运行应用程序时数据访问速度缓慢:

  • 操作系统:Windows 7 64位。
  • 已安装的MS Access版本:Access 2010或2003。
  • ODBC数据源使用的访问驱动程序:Microsoft Access驱动程序(* .mdb)版本6.01.7601.17632。

我已经google了一段时间才找到解决方案 根据互联网上发现的文章,其他开发者也遇到了同样的问题。

有关信息,我的ODBC 32位管理员未启用跟踪功能 以下页面提到了跟踪功能:
http://answers.microsoft.com/en-us/office/forum/office_2010-access/my-solution-to-access-being-slow-with-odbc/a5a6522f-a70f-421e-af1b-48327075e010

我也尝试过禁用LLMNR协议但未成功,如下页所示: http://accessexperts.net/blog/2011/11/02/windows-7-64bit-slow-with-access-2007-solved/

非常感谢任何帮助

1 个答案:

答案 0 :(得分:1)

有许多事情需要检查,您要做的首要事情是在您的应用程序中创建我们称之为持久连接的东西。持久连接只是意味着在启动代码中的某个位置,您打开从后端到记录集的表,并在该应用程序中执行的任何其他操作期间保持打开状态。

持久连接经常产生巨大差异的原因是,在创建与数据库的连接时,较新的操作系统往往会产生大量额外的安全性和开销。事实证明,通常在访问数据库中打开和关闭表需要打开和关闭这些连接。如果强制持久连接始终保持打开状态,则现在不会产生这种非常缓慢且大量的开销过程,这会干扰代码中一般更新的一般性能。

尝试上面的尝试,因为这种设置经常解决这个性能问题和问题。