MS访问表作为存储数据的集中位置

时间:2009-07-29 09:11:38

标签: database ms-access vba access-vba

是否可以将我的MS访问表作为存储数据的集中位置

我有一个mdb访问文件,可以使用表单将数据存储到表中。

是否可以将数据输入集中位置?

这个mdb文件副本由五个用户同时使用

请帮忙!

8 个答案:

答案 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)。

然后你可以:

  • 创建一个新的Access 项目 使用SQL Server数据库 后端

  • 使用当前Access数据库中的链接表进行链接 SQL Server中的等效表

一旦启动并运行,您就可以开始考虑在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 。这样,您就可以向服务器发送查询,该服务器只返回所请求的数据集,网络活动少得多。