客户端服务器应用程序的MS Access后端是否会出现传输速度问题?

Sag*_*rpe 2 architecture ms-access client-server jet

如果我在客户端 - 服务器类型软件的后端使用MS Access并且数据库文件是从客户端发送到服务器的,那么与SQL Server相比,它是否会在进一步的数据库处理,传输速度或性能方面产生任何问题?

Pau*_*ter 7

根据我的经验,在基于LAN的小型环境中,MS Access MDB文件和SQL Server性能之间存在4个主要差异(其中小的意味着20个用户或更少,不超过10个并发用户会话)

  1. 安全.使用访问MDB文件要求客户端可以直接访问MDB文件.如果您需要限制某些用户的数据访问,则此体系结构无法真正安全.可以破解访问用户级别的安全性.如果满足您的安全要求,您可以在操作系统中使用文件级别或文件共享级别安全性.
  2. 由于网络错误,MDB文件可能会损坏.我看到SQL Server数据库损坏的唯一一次是由于服务器上的硬件故障.
  3. MDB文件的上限约为25个用户,Access对插入,更新和删除的高事务量敏感.
  4. 在大多数使用Access的情况下,您需要让所有用户退出数据库以对表结构进行任何更改.这比在SQL Server中使用DDL脚本要方便得多.如果您决定使用Access,我建议您获取LDBView的副本,这样您就可以告诉每当您对数据结构进行例行更改时,您将不得不踢出数据库.

如果用户受众较小并且部署的简单性适用于客户端组织,则存在针对后端MDB文件的情况.但是,如果要启动新项目,则应仔细考虑SQL Server后端的优点.如果您拥有大量用户,则强烈建议使用SQL Server.

使用具有最新版本的MS Access和配置良好的LAN的MDB文件时,您不太可能遇到传输速度问题.

  • 有些系统会在没有损坏的MDB文件的情况下使用数年,但其他系统却没有.我想说的是,作为一般规则,SQL Server数据库只会在硬件故障的情况下被破坏.MDB文件也不能这样说. (2认同)

Joh*_*nFx 5

如果使用MS Access作为后端数据库,则它不是客户端 - 服务器解决方案.Jet数据库(MS Access创建的类型)是基于文件的,而不是客户端 - 服务器.

如果客户端和数据库之间的带宽很高(就像同一网络上的另一台服务器那样),那么它不应该造成与传输速度相关的任何重大性能问题.但是,如果您通过慢速WAN链接从客户端连接到数据库,它肯定会引入性能瓶颈.