我会尽量保持简单,我过去曾参与过一些项目,我们使用 Oracle 或 MS SQL Server 作为数据存储,并使用 Access 作为前端,而不是链接到我倾向于使用的表中使用与相应数据库的 ADO 连接来打开我的记录集,因为在大多数情况下,这会更快,因为查询是针对服务器执行的,然后返回结果,而不是在本地 PC 上进行工作。
我现在终于想到的问题是,如果我将一个 Access .mdb 文件放置在比我的本地 PC 具有更多处理能力的服务器计算机上,然后使用 ADO 连接(例如 Oracle/MS SQL)从中运行查询),由于 .mdb 已在服务器上,它会提供更好的性能吗?或者,由于 Access 是文件类型数据库而不是数据库服务器,因此工作仍将由本地 PC 自动完成吗?
最佳答案
不,它会变慢 - 查询仍将在客户端运行,并且您将在顶部进行网络事件。
Access 应用程序始终在客户端运行。通过在 LDB 文件上使用 Windows 文件系统字节范围锁来进行锁定,以允许 Access 的多个实例修改同一 MDB 文件。
所有代码都在客户端上运行,您必须通过网络发送数据。服务器对 MDB 文件所做的唯一工作就是充当文件服务器。
如果 Access 不够快,只需使用 SQL Server Express。由于 SQL Server 是一个客户端-服务器系统,因此将其放在快速服务器上会有所帮助。
关于sql - ADO 查询 MS Access 数据库,性能提高?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9021467/