什么是关系数据?
深入了解使用 Power Apps 构建的复杂应用时,就不得不了解关系数据这一基本概念。 该概念旨在在不同数据源之间建立连接,以增强功能和数据组织。
假设您要设计一款旅行支出应用,想要其中包含一项针对整个旅行的主记录,以及详细说明食物和住宿支出的其他记录。 通过关联这些记录,您可以在它们之间建立联系或链接。 此连接支持建立结构化关系,使您能够将各种指出关联到特定行程记录,从而维护连贯且有组织的数据集。
下表示例将所有支出数据存储在一个 Microsoft Dataverse 表中。
ID | 目的地 | 日期 | 旅行原因 | 支出类型 | 支出金额 |
---|---|---|---|---|---|
1 | 西雅图 | 2020/4/10 | 拜访客户 | 酒店 | 205.75 |
2 | 西雅图 | 2020/4/10 | 拜访客户 | 晚餐 | 31.33 |
3 | 西雅图 | 2020/4/10 | 拜访客户 | 航班 | 450.54 |
4 | 辛辛那提 | 2020 年 5 月 2 日 | 培训 | 出租车 | 23.99 |
5 | 辛辛那提 | 2020 年 5 月 2 日 | 培训 | 午餐 | 12.44 |
以上示例显示,由于每一行都具有整个行程的所有信息,因此存在冗余数据。 存储本数据的一种更好的方法是使用父级和子级表,然后在这两个实体之间创建关系。 下一个示例展示这两个表的外观。
首先是父级表,其中,每个行程都只有一个条目。
ID | 目的地 | 日期 | 旅行原因 |
---|---|---|---|
1 | 西雅图 | 2020/4/10 | 拜访客户 |
2 | 辛辛那提 | 2020 年 5 月 2 日 | 培训 |
然后是子级表,其中,每个支出项具有一个条目,并且具有到父级记录的引用。
ID | 支出类型 | 支出金额 | TripID |
---|---|---|---|
1 | 酒店 | 205.75 | 1 |
2 | 晚餐 | 31.33 | 1 |
3 | 航班 | 450.54 | 1 |
4 | 出租车 | 23.99 | 2 |
5 | 午餐 | 12.44 | 2 |
此处每项支出都有一个条目。 此外,还有 TripID 新列。 本列通过指定父级记录的记录 ID 来创建关系。 这样,您就可以查询相关行程的详细信息。
Power Apps 支持在不同数据源之间灵活建立关系。 例如,您可以将客户信息存储在 Dynamics 365 等 CRM 系统中,然后利用 Microsoft Lists 设置中的数据管理销售区域。
在 Power Apps 中,在销售区域列表中引用 Dynamics 365 中的客户 ID 遵循统一方法。 美妙之处在于,在单个应用中无缝集成和处理各种不同的数据源。 这种轻松连接和使用多个数据源的功能只是 Power Apps 为表带来的诸多优势之一。 它可以简化流程,允许您在应用环境中结合使用来自不同数据源的信息。
注意
Dataverse 可以使用 Lookup 列定义关系,并为您创建结构和连接表。 它超出了本文关于关系的入门级内容的范围,但在考虑数据源时却值得注意。
下一部分将介绍在 Power Apps 中使用关系的函数和公式。