向Microsoft SQL Server数据库添加数据连接
应用对象
可以将辅助数据连接添加到表单模板,用于查询Microsoft SQL Server数据库。 不能将辅助数据连接添加到将表单数据提交到数据库的表单模板。 如果要使用辅助数据连接将表单数据提交到数据库,请使用辅助数据连接到使用该数据库的 Web 服务。 在 “另请参阅 ”部分中查找有关将辅助数据连接添加到 Web 服务的详细信息的链接。
若要向数据库添加辅助数据连接,必须执行以下操作:
步骤 1:向表单模板添加辅助数据连接 此步骤根据数据库中的存储方式创建具有相应字段和组的辅助数据源。 还可以将表单模板配置为允许表单在表单首次打开时使用此数据连接。
步骤 2:将表单模板配置为使用数据连接 如果希望用户在表单打开后使用此数据连接,可以向表单模板添加规则或按钮,以允许用户从此数据连接获取数据。
本文内容
概述
创建基于外部数据源的表单模板时,Microsoft Office InfoPath 会创建与该外部数据源的主数据连接。 然后,InfoPath 根据数据在外部数据源中的存储方式为表单模板创建主数据源。 但是,主数据连接中使用的外部数据源可能没有要放入表单模板上的控件中的值。 这些值可能存在于另一个外部数据源中,例如另一个SQL Server数据库。 若要从另一个外部数据源获取值,可以将辅助数据连接添加到表单模板。
辅助数据连接是添加到表单模板的数据连接。 此数据连接可以是查询数据连接或提交数据连接。 只能将查询数据连接添加到表单模板,作为SQL Server数据库的辅助数据连接。 仅当需要来自外部数据源而不是主数据连接中的数据时,才添加此数据连接。 不能将提交数据连接作为辅助数据连接添加到 SQL Server 数据库。
向数据库添加查询数据连接时,InfoPath 会创建一个辅助数据源,其中包含与数据库中存储数据的方式相对应的数据字段和组。 由于辅助数据源中的数据结构必须与数据库表中数据的存储方式匹配,因此不能修改辅助数据源中的字段或组。 可以配置每个查询数据连接以保存结果,以便用户在表单未连接到网络时有权访问数据。 根据数据的性质,你可能希望仅在用户连接到网络时才显示查询结果。
注意
如果使用辅助数据连接从外部数据源检索敏感数据,则可能需要禁用此功能,以帮助防止在计算机丢失或被盗的情况下未经授权使用数据。 如果禁用此功能,则仅当用户连接到网络时,数据才可用。
将查询数据连接添加到表单模板时,默认情况下,基于此表单模板的表单在用户打开时使用数据连接。 还可以通过以下方式之一将表单模板配置为使用查询数据连接:
- 添加规则 可以将规则配置为在规则中的条件发生时使用查询数据连接。
- 添加按钮 可以向表单模板添加一个按钮,用户可以单击该按钮,以便使用查询数据连接获取数据。
- 使用自定义代码 如果无法添加规则或按钮,可以使用自定义代码通过查询数据连接获取数据。 使用自定义代码需要开发人员创建自定义代码。
开始之前
在向表单模板添加SQL Server数据库的辅助数据连接之前,需要数据库管理员提供的以下信息:
- 将用于此表单模板的数据库的服务器的名称。
- 将用于此表单模板的数据库的名称。
- 数据库所需的身份验证。 数据库可以使用Microsoft Windows 身份验证或SQL Server身份验证来确定用户如何访问数据库。
- 包含要发送到窗体的数据的表的名称。 这是主表。 如果计划在数据库中使用多个表,则需要这些其他子表的名称。 还需要子表中与主表中的字段具有关系的字段的名称。
- 是否可以安全地将查询结果存储在窗体中以供脱机使用。
步骤 1:添加辅助数据连接
在 “工具 ”菜单上,单击“ 数据连接”。
在“ 数据连接 ”对话框中,单击“ 添加”。
在“数据连接向导”中,单击“ 创建新连接”,单击“ 接收数据”,然后单击“ 下一步”。
在向导的下一页上,单击“数据库 (Microsoft SQL Server或仅Microsoft Office Access) ”,然后单击“下一步”。
在向导的下一页上,单击“ 选择数据库”。
在 “选择数据源 ”对话框中,单击“ 新建源”。
在“要连接到哪种类型的数据源”列表中,单击“Microsoft SQL Server,然后单击”下一步”。
在“ 服务器名称 ”框中,键入包含数据库的服务器的名称。
在 “登录凭据”下,执行以下操作之一:
- 如果数据库根据Microsoft Windows 网络中使用的凭据确定谁有权访问,请单击“ 使用 Windows 身份验证”。
- 如果数据库根据从数据库管理员那里获取的指定用户名和密码确定谁有权访问,请单击“使用以下用户名和密码”,然后在“用户名和密码”框中键入用户名和密码。
单击“下一步”。
在向导的下一页上,在“选择包含所需数据的数据库”列表中,单击要使用的数据库,选择“连接到特定表检查”框,单击主表的名称,然后单击“下一步”。
在向导的下一页上,在“ 文件名 ”框中,键入存储数据连接信息的文件的名称。
若要保存这些设置,请单击“ 完成”。
添加要在查询数据连接中使用的任何其他表。
如何?- 单击“ 添加表”。
- 在“ 添加表或查询 ”对话框中,单击子表的名称,然后单击“ 下一步”。 InfoPath 尝试通过匹配两个表中的字段名称来设置关系。 如果不想使用建议的关系,请选择该关系,然后单击“ 删除关系”。 若要添加关系,请单击“ 添加关系”。 在“ 添加关系 ”对话框中,单击相应列中每个相关字段的名称,然后单击“ 确定”。
- 单击“完成”。
- 若要添加其他子表,请重复这些步骤。
单击“下一步”。
若要使查询数据连接的结果在表单未连接到网络时可用,请选择“在表单模板中存储数据副本检查”框。
注意
当窗体使用此数据连接时,选中此检查框会将数据存储在用户计算机上。 如果表单从此数据连接获取敏感数据,则可能需要禁用此功能,以帮助保护计算机丢失或被盗时的数据。
单击“下一步”。
在向导的下一页上,键入此辅助数据连接的描述性名称。 如果希望窗体在打开窗体时自动接收数据,请选择“打开窗体时自动检索数据”框检查。
步骤 2:将表单模板配置为使用数据连接
如果希望基于此表单模板的表单在用户打开表单后使用此数据连接,可以在特定条件下向使用此数据连接的表单模板添加规则,也可以向表单模板添加一个按钮,用户可以单击该按钮以使用此数据连接。
添加规则
只要满足规则的条件,就可以向表单模板添加规则,以便从查询数据连接获取数据。 以下过程假定你已为表单模板创建了查询数据连接,并且已在表单模板上配置了一个控件来显示来自该数据连接的数据。
- 如果表单模板具有多个视图,请单击“视图”菜单上的“视图名称”,转到包含要显示辅助数据源数据的控件的视图。
- 双击要向其添加规则的控件。
- 单击“数据”选项卡。
- 在 “验证和规则”下,单击“ 规则”。
- 在“ 规则 ”对话框中,单击“ 添加”。
- 在“ 名称 ”框中,键入规则的名称。
- 若要指定规则应运行的条件,请单击“ 设置条件”,然后输入条件。 条件发生时,规则将运行。 如果未设置条件,则每当用户更改控件中的值时,规则都会运行,然后将其光标从该控件移开。
- 单击“ 添加操作”。
- 在 “操作” 列表中,单击“ 使用数据连接进行查询”。
- 在 “数据连接 ”列表中,单击要使用的查询数据连接,然后单击“ 确定 ”关闭每个打开的对话框。
- 要测试所做的更改,请单击“常用”工具栏上的“预览”,或者按 Ctrl+Shift+B。
添加按钮
可以向表单模板添加按钮控件,用户可以单击该控件以从查询数据连接获取数据。
- 如果表单模板具有多个视图,请单击“视图”菜单上的“视图名称”,转到包含要显示辅助数据源数据的控件的视图。
- 如果看不到“控件”任务窗格,请单击“插入”菜单上的“其他控件”,或按 Alt+I、C。
- 将按钮控件拖到表单模板上。
- 双击刚刚添加到表单模板的按钮控件。
- 单击“常规”选项卡。
- 在 “操作” 列表中,单击“ 刷新”。
- 在“ 标签 ”框中,键入要在表单模板上的按钮上显示的名称。
- 单击“设置”。
- 在“ 刷新 ”对话框中,单击“ 一个辅助数据源”。
- 在 “选择辅助数据源 ”列表中,单击与查询数据连接关联的辅助数据源。
- 单击“确定”关闭每个打开的对话框。
- 要测试所做的更改,请单击“常用”工具栏上的“预览”,或者按 Ctrl+Shift+B。