向 Microsoft Access 数据库添加数据连接

应用对象
InfoPath 2010 InfoPath 2013

如果用户需要来自 Microsoft Office Access 2007 (.accdb 格式) 数据库的数据,或者来自以早期版本 (.mdb 格式保存的 Access 数据库的数据,) 基于 Microsoft Office InfoPath 表单模板填写表单,则可以向查询 Access 数据库的表单模板添加辅助数据连接。

可以添加辅助数据连接,但该数据连接只能查询 Access 数据库。 不能添加将表单数据提交到 Access 数据库的辅助数据连接。

如果希望用户将其表单数据提交到 Access 数据库,可以设计基于 Access 数据库的表单模板,然后在主数据连接中启用提交数据连接。 或者,可以将辅助数据连接添加到适用于 Access 数据库的 Web 服务。

“另请参阅 ”部分中查找有关设计基于 Access 数据库的表单模板以及将辅助数据连接添加到 Web 服务的详细信息的链接。

本文内容

概述

辅助数据连接是添加到表单模板的数据连接。 辅助数据连接不同于在设计基于数据库或 Web 服务的新表单模板时创建的主数据连接。 表单模板的主数据连接可以从外部数据源接收数据,也可以将表单数据提交到外部数据源。 但是,一个表单模板只能有一个主数据连接。

可以根据需要向表单模板添加任意数量的辅助数据连接。 例如,假设有一个 Access 数据库,其中包含一个用于存储员工数据的表,另一个表用于存储客户数据。 可以添加从员工表检索数据的辅助数据连接,还可以添加另一个辅助数据连接,用于从同一 Access 数据库中的客户表检索数据。

尽管可以将辅助数据连接添加到可以将表单数据提交到外部数据源(例如 Web 服务或Windows SharePoint Services库)的表单模板,但只能使用辅助数据连接从 Access 数据库检索数据。 不能添加将表单数据提交到 Access 数据库的辅助数据连接。

向数据库添加查询数据连接时,InfoPath 会创建一个辅助数据源,其中包含与数据库中存储数据的方式相对应的数据字段和组。 由于辅助数据源中的数据结构必须与数据库表中数据的存储方式匹配,因此不能修改辅助数据源中的字段或组。

可以配置每个查询数据连接以保存其结果,以便用户在表单未连接到网络时有权访问数据。 根据数据的性质,你可能希望仅在用户连接到网络时才显示查询结果。

注意

如果使用辅助数据连接从外部数据源检索敏感数据,则可能需要禁用此功能,以帮助防止在计算机丢失或被盗的情况下未经授权使用数据。 如果禁用此功能,则仅当用户连接到网络时,数据才可用。

将查询数据连接添加到表单模板时,默认情况下,基于此表单模板的表单在用户打开时使用数据连接。 还可以通过以下方式之一将表单模板配置为使用查询数据连接:

  • 添加规则 可以将规则配置为在规则中的条件发生时使用查询数据连接。
  • 添加按钮 可以向表单模板添加一个按钮,用户可以单击该按钮,以便使用查询数据连接获取数据。
  • 使用自定义代码 如果无法添加规则或按钮,可以使用自定义代码通过查询数据连接获取数据。 使用自定义代码需要开发人员创建自定义代码。

返回页首

兼容性注意事项

不能将数据连接添加到与浏览器兼容的表单模板的 Access 数据库。

返回页首

开始之前

在向表单模板添加 Access 数据库的辅助数据连接之前,需要以下信息:

  • 数据库的名称和位置。

    注意

    如果 Access 数据库存储在网络位置中,请确保你的数据库可供用户访问。

  • 将向基于此表单模板的表单提供数据的表或查询的名称。 配置查询数据连接时,将使用此表或查询作为主表或查询。

  • 向主表或查询提供附加数据的任何其他表或查询的名称。 在大多数情况下,表关系已在数据库中建立。 如果必须手动建立主表或查询与另一个表或查询之间的关系,则需要表或查询的相关字段名称。

返回页首

步骤 1:添加辅助数据连接

  1. “工具 ”菜单上,单击“ 数据连接”。

  2. 在“ 数据连接 ”对话框中,单击“ 添加”。

  3. 在“数据连接向导”中,单击“ 创建新连接”,单击“ 接收数据”,然后单击“ 下一步”。

  4. 在向导的下一页上,单击“数据库 (Microsoft SQL Server或仅Microsoft Office Access) ”,然后单击“下一步”。

  5. 在向导的下一页上,单击“ 选择数据库”。

  6. “选择数据源 ”对话框中,浏览到数据库的位置。

    注意

    如果数据库存储在网络位置中,请浏览到该位置的通用命名约定 (UNC) 路径。 不要通过映射的网络驱动器浏览到网络位置。 如果使用映射网络驱动器,则基于此表单模板创建表单的用户将从映射的网络驱动器中搜索数据库。 如果用户没有映射的网络驱动器,则窗体将找不到数据库。

  7. 单击数据库的名称,然后单击“ 打开”。

  8. “选择表 ”对话框中,单击要使用的主表或查询,然后单击“ 确定”。

  9. 在向导的下一页上,选择“检查显示表列”框。
    默认情况下,表或查询中的所有字段都会添加到表单模板的主数据源。

  10. 清除不希望包含在辅助数据源中的字段的检查框。
    将任何其他表或查询添加到数据连接。
    如何?

    1. 单击“ 添加表”。
    2. 在“ 添加表或查询 ”对话框中,单击子表的名称,然后单击“ 下一步”。 InfoPath 尝试通过匹配两个表中的字段名称来设置关系。 如果不想使用建议的关系,请选择该关系,然后单击“ 删除关系”。 若要添加关系,请单击“ 添加关系”。 在“ 添加关系 ”对话框中,单击相应列中每个相关字段的名称,然后单击“ 确定”。
    3. 单击“完成”
    4. 若要添加其他子表,请重复这些步骤。
  11. 单击“下一步”。

  12. 若要使查询数据连接的结果在表单未连接到网络时可用,请选择“在表单模板中存储数据副本检查”框。

    注意

    当窗体使用此数据连接时,选中此检查框会将数据存储在用户计算机上。 如果表单正在从此数据连接检索敏感数据,则可能需要禁用此功能,以帮助在计算机丢失或被盗时保护数据。

  13. 单击“下一步”。

  14. 在向导的下一页上,键入此辅助数据连接的描述性名称,然后验证 “摘要 ”部分中的信息是否正确。

  15. 若要将窗体配置为在窗体打开时自动接收数据,请选择“打开窗体时自动检索数据”框检查。

返回页首

步骤 2:将表单模板配置为使用数据连接

如果希望基于此表单模板的表单在用户打开表单后使用此数据连接,可以在特定条件下向使用此数据连接的表单模板添加规则,也可以向表单模板添加一个按钮,用户可以单击该按钮以使用此数据连接。

添加规则

可以向表单模板添加一个规则,每当满足规则的条件时,该规则可用于从查询数据连接检索数据。 例如,可以向表单模板添加一个文本框,用户可以填写该文本框,以便从外部数据源获取特定数据。 然后,可以添加一个规则,每当用户在文本框中输入数据时使用该数据连接。

以下过程假定你已为表单模板创建了查询数据连接,并且已配置控件 (,而不是窗体模板上的按钮) 来显示来自该数据连接的数据。

  1. 如果表单模板具有多个视图,请单击“视图”菜单上的视图名称”,转到包含要显示辅助数据源数据的控件的视图。
  2. 双击要向其添加规则的控件。
  3. 单击“数据”选项卡。
  4. “验证和规则”下,单击“ 规则”。
  5. 在“ 规则 ”对话框中,单击“ 添加”。
  6. 在“ 名称 ”框中,键入规则的名称。
  7. 若要指定规则应运行的条件,请单击“ 设置条件”,然后输入条件。 条件发生时,规则将运行。 如果未设置条件,则每当用户更改控件中的值时,规则都会运行,然后将其光标从该控件移开。
  8. 单击“ 添加操作”。
  9. “操作” 列表中,单击“ 使用数据连接进行查询”。
  10. “数据连接 ”列表中,单击要使用的查询数据连接,然后单击“ 确定 ”关闭每个打开的对话框。
  11. 要测试所做的更改,请单击“常用”工具栏上的“预览”,或者按 Ctrl+Shift+B。

添加按钮

可以向表单模板添加按钮控件,用户可以单击该控件以从查询数据连接获取数据。

  1. 如果表单模板具有多个视图,请单击“视图”菜单上的视图名称”,转到包含要显示辅助数据源数据的控件的视图。

  2. 如果看不到“控件”任务窗格,请单击“插入”菜单上的“其他控件”,或按 Alt+I、C。

  3. 将按钮控件拖到表单模板上。

  4. 双击刚刚添加到表单模板的按钮控件。

  5. 单击“常规”选项卡。

  6. “操作” 列表中,单击“ 刷新”。

  7. 在“ 标签 ”框中,键入要在表单模板上的按钮上显示的名称。

  8. 单击“设置”。

  9. 在“ 刷新 ”对话框中,执行以下操作之一:

    • 若要接收来自具有此表单模板辅助数据连接的所有外部数据源的最新数据,请单击“ 所有辅助数据源”。
    • 若要将按钮配置为接收来自与表单模板的辅助数据连接的一个外部数据源的最新数据,请单击“ 一个辅助数据连接”,然后在“选择辅助数据源”列表中单击 辅助数据源
  10. 单击“确定”关闭每个打开的对话框。

  11. 要测试所做的更改,请单击“常用”工具栏上的“预览”,或者按 Ctrl+Shift+B。

返回页首