【问题标题】:ADO query to MS Access Database, Performance Increase?ADO 查询 MS Access 数据库,性能提升?
【发布时间】:2012-02-02 04:17:38
【问题描述】:

我会尽量保持简单,我过去曾参与过一些项目,我们使用 Oracle 或 MS SQL 服务器作为数据存储,使用 Access 作为前端,而不是在我倾向于使用的表中进行链接使用到相应数据库的 ADO 连接来打开我的记录集,因为在大多数情况下,这会更快,因为查询是针对服务器执行的,然后返回结果而不是本地 PC 上的工作。

我现在的问题终于解决了,如果我将访问 .mdb 文件放在比我的本地 PC 具有更多处理能力的服务器机器上,然后使用 ADO 连接从它运行查询(如 Oracle/MS SQL ),由于 .mdb 在服务器上,它会提供更好的性能吗?还是因为访问是文件类型数据库而不是数据库服务器,所以工作仍然由本地 PC 自动完成?

【问题讨论】:

  • 这个问题是关于 ADO 连接到文件共享上的 MDB 与 ADO 连接到客户端服务器数据库的性能吗?
  • @HansUp 不,这是 ADO 连接到存储在 C 上的 MDB 文件的性能:大型服务器的驱动器与使用链接表到标准桌面上的 MDB 文件的标准查询计算机 C:驱动器。

标签: sql ms-access ado


【解决方案1】:

不,它会更慢 - 查询仍将在客户端运行,并且您将在顶部进行网络活动。

Access 应用程序始终在客户端运行。通过对 LDB 文件使用 Windows 文件系统字节范围锁定来进行锁定,以允许多个 Access 实例修改同一个 MDB 文件。

所有代码都在客户端上运行,您将不得不通过网络发送数据。服务器对 MDB 文件所做的唯一工作就是充当文件服务器。

如果 Access 不够快,只需使用 SQL Server Express。由于 SQL Server 是一个客户端-服务器系统,因此将它放在一个快速的服务器上会有所帮助。

【讨论】:

  • 为此干杯,我可以使用 SQL Express 等,但只是想知道以这种方式使用 Access 是否会让服务器执行查询,或者它是否仍然是客户端。
  • 再次感谢,请问您对我的一个较早的未回答问题有什么想法吗? (stackoverflow.com/questions/8896845/…)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-04
  • 1970-01-01
  • 2022-12-11
  • 1970-01-01
  • 2021-08-14
相关资源
最近更新 更多