2017-02-24 126 views
0

我期待创建一个Access应用程序,偶尔连接在线同步功能。这个想法是在本地使用SQL Server Compact作为后端,然后使用程序将其同步到服务器端SQL Server。我找不到足够的明确证据证明你不能这样做。你可以使用SQL Server Compact作为MS Access应用程序的后端吗?是否可以使用SQL Server Compact作为MS Access的后端?

回答

1

您可以通过ADO描述here

但是当你要复制的数据,这将是更简单的使用的SQL Server Express,因为它可以设置马上为复制用户由服务器端SQL Server发布的数据库。

+1

ADO方法有一些局限性:不支持blob类型,没有简单的数据绑定 – ErikEJ

+0

这个建议没有意义,不适用于访问。您可以创建一些ADO记录集的想法与能够使用精简版运行Access应用程序的任何关系都是绝对大脑死亡闪电般的恶意和不正确的建议。由于没有ODBC驱动程序,因此您无法运行也不能使用使用访问应用程序的精简版访问应用程序。这意味着报告和任何绑定表单(99.99%的访问应用程序假定和要求)将不起作用。能够创建ADO记录集与使用Acces中的紧凑SQL近乎零相关 –

1

不,这是不可能的,你应该使用SQL Server Express - 什么阻止你这样做?

+0

我们将在属于我们现场销售员的30台笔记本电脑上安装此数据库。我有一种使用SQL Server Compact的感觉,管理安装和更新会更容易。我可能是错的...... – WestAce

+1

如果您可以避免使用SQL Server的本机复制选项,则可以考虑[SQL Server 2016 Express LocalDB](https://msdn.microsoft.com/zh-cn/library/hh510202。 ASPX)。这是一个沉默的安装。 – Gustav

+1

@WestAce你对于部署问题是正确的,但安装是轻量级的,可以很容易地进行沉默 - 但需要管理员权限(不同于SQL Compact) – ErikEJ

2

这里最好的选择可能是Sql Server LocalDB

LocalDB使用与完整的Sql Server相同的数据类型和格式,并且引擎甚至依赖于为完整的Sql Server构建的库。但是,与普通的Sql Server Express Edition不同,即使您的主应用程序未运行,它也不会作为服务运行,并且the installation deployment story is a bit easier, too

在Access方面,您可以设置一个ODBC连接来创建链接表以便在应用程序中使用,这与使用Sql Server Express Edition的方式非常相似。

+0

您可以将LocalDB作为复制订户连接到SQL Server的联机版本吗? – WestAce

相关问题