【发布时间】:2019-11-22 00:17:35
【问题描述】:
我在 Windows 服务器上安装了 SQL Server Express。我有 10 个人在本地 PC 上使用 MS Access 2016。假设数据库非常小且简单。连接到 SQL Server 的最简单方法是什么?简单的 ODBC 会起作用吗?我需要启用远程访问吗? TCP/IP?管道?
【问题讨论】:
标签: sql-server ms-access odbc
我在 Windows 服务器上安装了 SQL Server Express。我有 10 个人在本地 PC 上使用 MS Access 2016。假设数据库非常小且简单。连接到 SQL Server 的最简单方法是什么?简单的 ODBC 会起作用吗?我需要启用远程访问吗? TCP/IP?管道?
【问题讨论】:
标签: sql-server ms-access odbc
是的,这里的基本概念是使用链接表。不清楚在使用 SQL Server 之前,您是否在多用户模式下使用 Access。
这里的一般想法是您有一个拆分数据库。所以你有应用程序部分或所谓的前端。这个概念真的和说跑步词或excel没有什么不同。这些应用程序安装在每个工作站上。但是 THEN 应用程序可以使用一些文件。
因此,在典型的多用户 Access 应用程序中,您的应用程序部分安装在每台机器(前端)上。
然后,您通常会将后端文件放在服务器上的某个文件夹中。然后你的前端就会有链接到后端的表。
如果后端采用sql server?然后设置真的和上面一样。您拥有安装在每台机器上的前端应用程序部分,并且您拥有像以前一样的链接表。唯一的区别是现在您的链接表指向 SQL 服务器。
所以,是的,您必须为 SQL 服务器启用 TCP/IP。您还必须决定是否要为用户使用 Windows 身份验证(即 Windows 登录)。如果您有域控制器,您实际上只能从实际用例中使用 Windows 身份验证。 (管理所有计算机权限的计算机)。如果您不确定或没有域?那么您将需要创建和使用 SQL 服务器登录。大多数情况下,您可以为 SQL Server 创建一个登录名/用户,并让所有访问 FE 都使用这个登录名。 (因此,再次使用 Access 链接表管理器链接 FE,并在链接过程中使用 + 保存此登录)。
作为一种标准方法,无论是否使用 SQL Server,您的应用程序的工作方式都是一样的。在这些用例示例中,您在前端使用链接表。事实上,如果您有一个访问后端,并且现在使用 SQL 服务器作为后端,那么您的所有表单甚至 VBA 代码都应该像以前一样工作。使用记录的代码通常会有一些“微小”的变化,但表格等应该像以前一样工作。
【讨论】:
ODBC 是一种简单且经过验证的方法。
旁注:
考虑使用脚本和快捷方式将前端分发给用户的方法,如我的文章中所述:
Deploy and update a Microsoft Access application with one click
【讨论】: