使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。
导入或链接 SQL Server 数据库中的数据

可以链接到SQL 数据库或从SQL 数据库导入数据,该数据库是用于任务关键型应用程序的高性能托管数据库。 有关详细信息,请参阅 SQL Server 2016

  • 链接到数据时,Access 会创建一个双向连接,将更改同步到 Access 和 SQL 数据库中的数据。

  • 导入数据时,Access 会创建数据的一次性副本,这样就不会同步 Access 和 SQL 数据库中的数据更改。

将 Access 连接到 SQL Server 的概述

开始之前

想要进行得更顺利吗? 那就在链接或导入之前做好以下准备工作:

  • 找到 SQL Server 数据库服务器名称,确定必需的连接信息,然后选择身份验证方法(Windows 或 SQL Server)。 有关身份验证方法的详细信息,请参阅连接到服务器(数据库引擎)保护你的 SQL 数据库

  • 确定想要链接到或导入的表或视图,以及链接表的唯一值字段。 可通过一次操作链接到或导入多张表或多个视图。

  • 考虑每张表或视图中的列数。 Access 不支持一张表中超过 255 个字段,因此 Access 只链接或导入前 255 列。 变通方案是在 SQL Server 数据库中创建一个视图,用于访问超出限制的列。

  • 确定要导入的数据总量。 Access 数据库的最大大小为 2GB,减去系统对象所需的空间。 如果 SQL Server 数据库包含大型表格,可能无法将其全部导入一个 Access 数据库。 该情况下,可考虑链接到数据,而不是导入数据。

  • 使用受信任的位置和 Access 数据库密码,以保证 Access 数据库和连接信息的安全性。 如果选择在 Access 中保存 SQL Server 密码,这一点特别重要。

  • 计划创建附加关系。 Access 不会在导入操作结束时自动在相关表之间创建关系。 可以使用“关系”窗口在新的表和现有表之间手动创建关系。 有关详细信息,请参阅 什么是关系窗口?创建、编辑或删除关系

步骤 1:开始使用

  1. 选择“外部数据”>“新建数据源”>“来自数据库​​”>“来自 SQL Server”。

  2. 在“获取​​外部数据 - ODBC 数据库​​”对话框中,执行下列操作之一:

    • 若要导入数据,请选择“将源数据导入当前数据库的新表中”。

    • 若要链接到数据,请选择“通过创建链接表来链接到数据源”。

  3. 选择“确定”。

步骤 2:创建或重复使用 DSN 文件

可创建一个 DSN 文件,也可重复使用现有文件。 想对不同链接和导入操作使用相同的连接信息,或者想与同样使用 DSN 文件的其他应用程序进行共享时,可以使用 DSN 文件。 可使用数据连接管理器直接创建 DSN 文件。 有关详细信息,请参阅管理 ODBC 数据源

尽管仍可使用早期版本的 SQL ODBC 驱动程序,但建议使用版本 13.1,该版本进行了许多改进,并支持 SQL Server 2016 的新增功能。 有关详细信息,请参阅 Microsoft ODBC Driver for SQL Server on Windows(Windows 上的 Microsoft ODBC Driver for SQL Server)。

  1. 执行下列操作之一:

    • 如果希望使用的 DSN 文件已存在,请从列表中选择该文件。

      “选择数据源”对话框

      可能需要再次输入密码,具体取决于在连接信息中输入的身份验证方法。

    • 新建 DSN 文件:

      1. 选择“新建”。

        “新建数据源”对话框
      2. 选择“ODBC Driver 13 for SQL Server”,然后选择“下一步”。

      3. 输入 DSN 文件的名称,或单击“浏览”在其他位置中创建文件。

  2. 单击“下一步”,查看摘要信息,然后单击“完成”。

步骤 3:使用“创建到 SQL Server 的新数据源”向导

在“创建到 SQL Server 的新数据源”向导中,执行下列操作:

  1. 在第 1 页上,输入标识信息:

    • 在“说明”框中,输入 DSN 文件的相关文件信息(可选)。

    • 在“服务器”框中,输入 SQL Server 的名称。 请不要单击向下箭头。

  2. 在第 2 页上,选择下面某个身份验证方法:

    • 使用集成Windows 身份验证    通过 Windows 用户帐户进行连接。 (可选)输入服务主体名称 (SPN) 。 有关详细信息,请参阅客户端Connections (ODBC) 中的服务主体名称 (SPN)

    • 使用SQL Server身份验证...   通过输入 登录 ID密码,使用数据库中设置的凭据进行连接。

  3. 在第 3 页和第 4 页上,选择自定义连接的各个选项。 有关详细信息,请参阅 Microsoft ODBC Driver for SQL Server

  4. 之后会出现确认设置的屏幕。 选择“测试数据源”以确认连接。

  5. 可能需要登录到数据库。 在“SQL Server 登录”对话框中,输入登录 ID 和密码。 若要更改其他设置,请选择“选项”。

阶段 4:选择要链接到或导入的表和视图

  1. 在“链接表”或“导入对象”对话框的“”下,选择想要链接或导入的每个表或视图,然后单击“确定”。

    要链接或导入的一系列表
  2. 在链接操作中,确定是否选择“保存密码”。

    安全性    选择此选项无需在每次打开 Access 并访问数据时输入凭据。 但是,这会在 Access 数据库中存储未加密的密码,这意味着可以访问源内容的用户可以看到用户名和密码。 如果选择此选项,我们强烈建议将 Access 数据库存储在受信任位置并创建 Access 数据库密码。 有关详细信息,请参阅决定是否信任数据库使用数据库密码加密数据库

    注意    如果决定不保存密码,但随后改变了主意,则需要删除并重新创建链接表,然后选择“ 保存密码”。

步骤 5:创建规格和任务(仅限导入)

结果

链接或导入操作完成后,导航窗格中会出现该表,其名称与 SQL Server 表或视图的相同,且带有所有者名称。 例如,如果 SQL 名称是 dbo.Product,则 Access 名称为 dbo_Product。 如果名称已被占用,则 Access 将在新的表名称后追加“1”,例如 dbo_Product1。 如果 dbo_Product1 也被占用,Access 将创建 dbo_Product2,依此类推。 但是也可将表重命名为更有意义的名称。

在导入操作中,Access 永远不会覆盖数据库中的表。 虽然不能直接将 SQL Server 数据追加到现有表格中,但可创建追加查询,在从相似的表中导入数据之后追加数据。

在链接操作中,如果列在 SQL Server 表中处于只读状态,则在 Access 中也处于只读状态。

提示    若要查看连接字符串,请将鼠标悬停在 Access 导航窗格中的表上。

更新链接表的设计

不能添加、删除或修改列,也不能更改链接表中的数据类型。 如果想要更改设计,请在 SQL Server 数据库中进行。 若要查看 Access 中的设计更改,请更新链接表:

  1. 选择“外部数据”>“链接表管理器”。

  2. 选择想要更新的每个链接表,选择“确定”,然后选择“关闭”。

比较数据类型

Access 数据类型与 SQL Server 数据类型的命名方式不同。 例如,SQL Server 中“bit”数据类型的列被导入或链接到 Access 中的“是/否”数据类型。 有关详细信息,请参阅比较 Access 和SQL Server数据类型

链接数据或将数据导入 Access 数据库中,即可使用存储在 SQL Server 中的数据。 如果和他人共享数据,链接是一个不错的选择,因为数据存储在集中位置,而且可查看最新数据、添加或编辑数据,并在 Access 中运行查询或报告。

步骤 1:准备链接

  1. 查找您希望链接至的 SQL Server 数据库。 如有必要,与数据库管理员联系以获得连接信息。

  2. 识别 SQL 数据库中您将链接至的表和视图。 您可以一次链接至多个对象。

检查数据源,并注意以下事项:

  • Access 在一个表中最多支持 255 个字段(列),因此,链接表将只包含所链接到的对象的前 255 个字段。

  • 在 SQL Server 表中为只读的列在 Access 中也为只读。

  1. 要在新数据库中创建链接表:请单击“文件”>“新建”>“空白桌面数据库”。 要在现有 Access 数据库中创建链接表,请确保拥有将数据添加至数据库所需的权限。

    注意: 在现有 Access 数据库中创建的链接表将获取与源对象中相同的名称。 因此,如果已有另一个具有相同名称的表,则新链接表名称将添加一个“1”,例如 Contacts1。 (如果 Contacts1 也已在使用中,Access 将创建 Contacts2 等。)

步骤 2:链接到数据

当在 SQL Server 数据库中链接至表或视图时,Access 可创建反映源表格结构和内容的新表(称为链接表)。 您可在 SQL Server 或数据表视图或者来自 Access 中的表单视图中更改数据,这些更改会同时在 SQL 和 Access 中反映。 任何对链接表的结构更改,如删除或更改列,必须在 SQL Server 而不是 Access 中进行。

  1. 打开目标 Access 数据库。

  2. 在“外部数据”选项卡上,单击“ODBC 数据库”。

  3. 单击“通过创建链接表来链接到数据源”>“确定”,然后按照向导中的步骤操作。在“数据源”对话框中,如果想使用的 .dsn 文件已存在,则在列表中单击此文件。

    新建 .dsn 文件:

    在“选择数据源”框中,单击“新建”>“SQL Server”>“下一步”。

    1. 为 .dsn 文件键入名称,或者单击“浏览”。

      注意: 需要具有该文件夹的写入权限才能保存 .dsn 文件。

    2. 单击“下一步”,查看摘要信息,并单击“完成”。

      按照“对 SQL Server 创建新的数据源”向导中的步骤操作。

  4. 单击“确定”并在“”下方,单击您希望链接至的每个表或视图,然后单击“确定”。

如果您查看“选择唯一的记录标识符”,这意味着 Access 无法确定哪个字段或哪些字段可唯一识别每行源数据。 仅选择每行的唯一字段或字段组合,而且如果您不确定,请与 SQL Server 数据库管理员核实。

当完成链接操作时,您可在导航窗格中查看新的链接表。

应用最新的 SQL Server 对象结构。

当您打开链接表或者源对象时,即可看到最新的数据。 然而,如果结构更改是对 SQL Server 对象执行的,您将需要更新链接表以查看这些更改。

  1. 在导航窗格中右键单击表,然后在快捷菜单上单击“链接表管理器”。

  2. 选中想更新的每个链接表旁边的复选框,或单击“全选”以选择所有链接表。

  3. 单击“确定”>“关闭”。

注意: 因为 Access 数据类型与 SQL Server 数据类型不同,Access 可将每一列链接至恰当的数据类型。 您仅可在 Access 中查看而不能更改分配的数据类型。

有关详细信息,请参阅共享 Access 桌面数据库的方式

返回页首

我还需了解哪些信息?

返回页首

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×