访问数据库共享策略

时间:2010-01-08 23:23:12

标签: database ms-access ms-access-2007 collaboration sharing

您可以采用哪些策略让多人在访问数据库上工作?

是否有可能在线托管并且无需开发自定义前端即可使其功能正常运行?

MS Access作为一个软件有一些很好的功能,不需要任何编程配置:

  • 下拉列表 - 选择一个
  • 多重复选框列表 - 选择多个

即使在线托管,是否有可能获得所有这些功能?我基本上想到了另一种方法,可以使用上述GUI功能快速让人们使用数据,而无需使用webapp<> MySQL方式。

5 个答案:

答案 0 :(得分:5)

你在这里有一些好评。请记住,2010年的访问权限已经发生了很大变化。

Access 2010允许您构建Web应用程序。开发过程与多年来的开发过程非常相似,但您不能在这些Web应用程序的表单中使用VBA(使用新的宏语言)。此新功能集允许您将构建的应用程序发布到网站。这是我在2010年访问中运行的应用程序的视频,在视频的中间点,我切换到在Web浏览器中100%运行访问应用程序:

http://www.youtube.com/watch?v=AU4mH0jPntI

上述内容适用于今年到期的2010年。以上将要求您运行SharePoint服务,或使用支持“访问Web”服务的托管服务。

对于以前版本的访问,出于所有意图和目的,它根本不是基于Web的系统。现在,当您说多个用户时,您必须澄清哪些用户以及他们计划在哪里。如果您的用户位于本地办公室网络上,则MS访问可以直接用作多用户系统,无需额外的编码和编程。但是,建议您将应用程序拆分为部署在每个用户计算机上的前端部分。这个概念在我的下一篇文章中有所描述。

http://www.members.shaw.ca/AlbertKallal/Articles/split/index.htm

现在,也许用户将会在全国各地的笔记本电脑和不同地点使用?在这种情况下,您尝试通过广域网连接,或让用户通过Internet连接到应用程序。这是一个不同的问题。在这种情况下,一个好的解决方案是为后端使用类似SQL服务器的东西,并继续将Access前端部署到每个用户的计算机。这种应用往往也是最经济实惠的。使用sql server + ms-access意味着你可以像往常一样继续在Access中进行开发。在不使用sql server的情况下实现广域使用的另一种方法是使用称为终端服务的东西。我在下面的文章中概述了这些可能性:

http://www.members.shaw.ca/AlbertKallal//Wan/Wans.html

如前所述,此处的其他一些人发布了一些您可以考虑使用的新SharePoint功能的链接,但它们并未在今年晚些时候发布。

答案 1 :(得分:2)

多用户访问应用程序对于15-25或更小的游戏中的小型工作组用户群来说非常容易。除此之外,开发人员应该考虑升级到服务器后端,权衡是服务器的管理开销更大,而如果保留Jet / ACE后端则必须更仔细地编写应用程序。

至于在线访问,您无法通过HTTP进行此操作,但如果您有可用的Windows终端服务器,则可以在此处托管您的应用并授予用户访问权限。这实际上是一种非常简单,高效且廉价的方式来支持应用程序的远程用户,尽管用户数量越多,问题就越多。但是当Access应用程序的用户数量增加会导致Windows终端服务器设置不足时,您将不再使用Jet / ACE后端。

使用服务器后端,您可以通过Internet访问VPN上的SQL Server,如果您真正有效地编写Access应用程序,即使通过标准宽带连接,您的用户仍可以高效地工作。 / p>

然后是Access的未来:在Access 2010中,已经完成了大量工作以与Sharepoint 2010中的许多新功能集成。如果使用新的Access Web表单和报告创建A2010应用程序,您的应用程序可以上传到运行新Access Services的Sharepoint服务器,然后可以在Web浏览器中运行(不限于IE,不依赖于任何插件或Web控件,就像过去的情况一样)完全没有价值的访问数据访问页面)。数据存储可以是SQL Server,也可以将Jet / ACE保留给不通过Web浏览器访问的用户,并将数据存储在Sharepoint中以供在线用户使用。此外,您可以将一个与Sharepoint集成的应用程序与Access本地运行,该应用程序在连接到Internet时使用Sharepoint,并且在断开连接时仍可以脱机工作。再次连接时,您可以将本地更改与Sharepoint服务器同步,解决所有差异并继续工作。

这些功能非常引人注目,根据我所听到和看到的内容,如果Access应用程序完全由Web表单和报表构建,则在Access中运行以及在Web中运行时,它的外观和功能将完全相同浏览器通过Sharepoint。如果您需要具有客户端功能而不向浏览器中运行应用程序的用户公开,您仍然可以使用传统的Access对象!

Access development team's blog有很多关于A2010即将发布的帖子,而且a good video posted there demonstrating how A2010 integrates with Sharepoint 2010's new Access Services

这构成了Access的网络功能的巨大飞跃,以前几乎不存在,我对此非常兴奋。我之前非常担心Access的变化,这似乎完全使它成为Sharepoint的仆人,但现在我可以看到Access用户和Access开发人员的好处将是巨大的。

答案 2 :(得分:1)

我听说过的一种方法是将访问数据库导入SQL Server数据库 (几乎任何版本都可以。)。

然后使用Access链接到SQL Server数据库,让用户像以前一样使用它。

请看这个链接:http://office.microsoft.com/en-us/access/HA010345991033.aspx

如果您想要一个在线解决方案,我建议您使用普通的Web应用程序架构。 (与适当的数据库交谈。)。

答案 3 :(得分:0)

我自己从来不需要支持它,但是从我到目前为止所听到的情况来看,只要你需要支持多个用户同时写作,性能就会大大降低。我认为这是因为Access使用简单的文件锁定来实现隔离,这对于并发数据库系统来说不是正确的技术。

答案 4 :(得分:-2)

在线托管?你的意思是在网络上?从技术上讲,它可以在网络上运行,但有一个原因,MS-Access不在Visual Studio中 - 它不被视为开发平台 - 它是一个桌面应用程序。当MS-Access首次出现在场景中时,许多人使用它构建了应用程序。多用户功能就不存在了。最多可以有四到五个用户。但我不会再追求更多。

相关问题