可以将Microsoft Access Forms应用程序切换为使用SQL后端吗?

时间:2009-09-30 01:31:33

标签: sql-server ms-access migration

我被要求提供一个估算来更改使用MS Access设计的相对较小的应用程序以使用SQL数据库。

首先,这甚至可能吗?我从来没有使用过Access,所以我想知道。如果有可能,请您指点一些有关此教程的网站?

第二:如果有可能,是否推荐?它是一个重大的性能影响?您可以和想要分享的任何具体的做法/做法?

提前感谢您的帮助。

5 个答案:

答案 0 :(得分:5)

尽管需要进行全面测试,但SQL Server升迁相对容易。我估计在初始系统开发的5%到10%的努力。建议在特定情况下进行SQL Server升迁,例如大于25到50个用户或24x7访问,或者在发生损坏时重新键入数据时难以/不可能。

查看我的Random Thoughts on SQL Server Upsizing from Microsoft Access Tips page

SQL Server group SQL Server Migration Assistant for Access (SSMA Access)有一个工具比升尺度向导好很多。

答案 1 :(得分:3)

对于将Microsoft Access数据库转换为使用SQL Server作为后端数据存储的特​​定任务,同时保持用户界面不受Microsoft Access应用程序的影响,Access本身提供了“升迁向导”(工具|数据库实用程序|升迁向导)。

此向导将引导您完成连接到SQL Server实例,创建SQL Server数据库以及尽可能将表和视图(称为Access中的查询)移动到新数据库的过程。

这个过程可能相对轻松,或者充满困难取决于许多因素,包括您在Access数据库中验证数据的程度,是否在查询中使用了VBA函数,以及是否已经使用了Access独有的任何查询结构。

答案 2 :(得分:0)

这告诉您如何将Access转换为SQL Server:

http://support.microsoft.com/kb/237980

现在,根据应用程序的编写方式(语言等),其余部分可能需要更多工作。然而,由于变量的数量很大,因此很难在那个上面投球。无论如何,这是可能的,所以这不是问题。

就性能而言,如果数据库很小,那么Access实际上可能会更快。如果数据库很大,您将从SQL服务器获益。除此之外,您可以在中央设置分布式客户端和一个数据存储,这是一个优势。

顺便说一句,如果这是使用.NET框架编写的,它可能会变得更容易。

答案 3 :(得分:0)

这很容易做到(希望如此)。在Access中,您可以创建链接表,它们只是链接到其他数据库(如SQL Server)中的表,因此您可以使用现有应用程序并将所有具有相同名称链接的Access表替换为SQL Server数据库中的表。

我认为这可能是性能影响的相反,具体取决于具体情况。访问非常高效,但只有少量并发用户(例如,少于30个)。因此,如果应用程序具有大量用户,您将从切换到SQL Server中受益。但是,如果SQL Server数据库托管在不同的计算机上,则通过连接到远程服务器上的数据库(而不是连接到本地Access数据库)而失去性能。

我不建议亲自这样做。

答案 4 :(得分:0)

升级或不升级 - 这是问题......(或者对我们而言)

升级到sqlserver有点大不了....我们通过从AccessTables.com转到WAN复制服务来避开它,并且至少暂时使用Access ....升级只是一个问题......处理网络前端或终端服务也是其中的一部分......