是否可以将我的MS访问表作为存储数据的集中位置
我有一个mdb访问文件,可以使用表单将数据存储到表中。
是否可以将数据输入集中位置?
这个mdb文件副本由五个用户同时使用
请帮忙!
答案 0 :(得分:5)
Jaison,
您可以使用Access作为集中式数据存储。如果您刚刚开始,SQL Server是OPTIMAL的选择。
但是,在多用户场景中访问会窒息,这根本不是真的。
您确实需要使用Access数据文件的良好备份策略。但最后我检查了你需要一个很好的SQL Server备份策略。 (有一个非常重要的警告,SQL Server可以执行“热”备份,但不能访问。)
所以我的回答是不同的...你可以做到这一点,以便在今天结束时你可以部署和多用户。那么也许你应该开始适应你当前的应用程序来使用SQL Server。
我最近回答了另一个关于如何将数据库拆分为两个文件的问题。这是链接。
Creating the Front End MDE
这应该让你开始。
赛斯
答案 1 :(得分:2)
五是用户非常少,如果设置得当,Access对小型办公室的效果非常好。必须拆分数据库,每个用户都有一个前端副本。这并不意味着每个用户都需要Access的完整副本,运行时版本就足够了。 2007运行时是免费的(http://www.microsoft.com/downloads/details.aspx?familyid=d9ae78d9-9dc6-4b38-9fa6-2c745a175aed&displaylang=en)
你应该阅读这个涉及许多误解的主题:Is MS Access (JET) suitable for multiuser access?
答案 2 :(得分:2)
我运行了10个用户拆分前/后端应用程序已有好几年没有任何实际性能问题,但显然取决于数据的大小,我同意最佳解决方案是使用正确的数据库服务器。
至关重要的是,SQL Server Express需要在服务器上安装,而Access .mdb后端可以位于网络驱动器上。如果您处于资源匮乏的环境中,您所拥有的只是一个网络驱动器,那么Access设置是一个很好的解决方案。
我们最终将数据迁移到SQL Server并重定向前端,但更多用于安全和备份(集中管理)。
答案 3 :(得分:1)
我和这个人在一起。
安装SQL Server Express或更高版本。您需要确保它允许远程连接查看(http://blogs.msdn.com/sqlexpress/archive/2005/05/05/415084.aspx)。
然后你可以:
或
一旦启动并运行,您就可以开始考虑在SQL Server上创建查询/存储过程,而不是在Access中使用此功能。
答案 4 :(得分:0)
我在多用户设置中看到多次访问窒息。
不要这样做 - 使用像SQL Server Express这样的东西并为自己省去很多麻烦
答案 5 :(得分:0)
如果你只有5个用户并且你的表非常小,只需将.mdb文件存储在文件服务器上就可以了。 (将数据库拆分为前端和后端可能不是一个坏主意。)
如果您有很多用户或共享文件服务器不是一个选项,您可以使用EQL Data plugin将数据复制到中央服务器,而不必设置为设置MS SQL。
答案 6 :(得分:-2)
Access不是共享数据的最佳数据库,但可以在多个用户之间共享。见here
答案 7 :(得分:-2)
您可以将Access应用程序划分为两个文件,一个用户界面( ui.mdb ),另一个用实际表格( tab.mdb ) 。 ui.mdb 中的代码需要引用 tab.mdb 中的表。 这样,您就可以将 tab.mdb 存储在网络共享中,其中所有用户(每个用户在本地驱动器上都有单独的 ui.mdb )都可以使用它。 / p>
话虽如此,我完全赞同Galwegian:不要这样做。
您的方法的一个问题是, 查询在客户端上执行。来自bar的 select foo,其中fizz = buzz 查询需要加载 bar 中的所有 fizz 条目以检查是否 >条款是真的。 他的方法用一个小型数据库服务器取代 tab.mdb 。这样,您就可以向服务器发送查询,该服务器只返回所请求的数据集,网络活动少得多。