在多重标准关系中,您可以增加匹配字段的数目,这会增加 FileMaker Pro Advanced 在顺利联接相关记录之前解析的标准。FileMaker Pro Advanced 会在关系的每一端以字段出现的顺序比较每个匹配字段的值。这称为 AND 比较;为了顺利匹配,每个匹配字段都必须在其他表中的相同字段找到相应值。
此关系采用以下标准进行定义:
表 | 字段名 | 注释 |
表A | 文本字段A | 匹配字段至文本字段B 和数值字段B |
| 数值字段A | 匹配字段至文本字段B 和数值字段B |
表B | 文本字段B | 匹配字段至文本字段A 和数值字段A |
| 数值字段B | 匹配字段至文本字段A 和数值字段A |
根据此关系中的标准,表A 中文本字段A 值为蓝色且数值字段A 值为 123 的记录仅匹配表B 中文本字段B 和数值字段B 的值分别为蓝色和 123 的记录。如果文本字段A 和文本字段B 具有匹配值,但数值字段A 和数值字段B 没有匹配值,关系就不会返回相关记录。
表 | 记录号 | 字段名 | 值 | 相关记录? |
表A | 1 | 文本字段A | 蓝色 | 是 |
| 2 | 文本字段A | 蓝色 | 否 |
| 3 | 文本字段A | 红色 | 否 |
表B | 1 | 文本字段B | 蓝色 | 是 |
| 2 | 文本字段B | 红色 | 否 |
| 3 | 文本字段B | 蓝色 | 是 |
在本例中,使用具有以下三个表的数据库创建多标准关系:
•设备,存储设备租赁库存
•客户,存储客户姓名和地址
•供应行项目,存储每次设备出租的记录,包括设备 ID、客户 ID 和事件日期
此数据库可以跟踪设备出租,并按所选客户或所选日期显示所有出租。
1. 多标准关系发生在客户表和供应行项目表之间。创建具有以下字段的表:
表 | 字段名 | 注释 |
客户 | 客户 ID | 数值字段,自动输入序列号;针对供应行项目表的其中一个匹配字段 |
| 事件日期 | 日期字段;针对供应行项目表的其他匹配字段 |
供应行项目 | 客户 ID | 数值字段;针对“客户”表的其中一个匹配字段 |
| 事件日期 | 日期字段;针对“客户”表的其他匹配字段 |
| 设备 ID | 数值字段 |
2. 在“编辑关系”对话框中,将“客户 ID”和“事件日期”定义为客户表和供应行项目表之间的关系中的匹配字段。
3. 在“客户”表中,将“客户 ID”字段设置为自动输入序列号,“客户”表中每条记录都有一个唯一的 ID 号码。
4. 在“供应行项目”表中,选择“允许通过此关系创建记录”。
关系图中的表如下所示:
5. 在客户布局上添加入口,并在入口添加“客户::设备 ID”字段。
要创建新的相关记录,请在“客户::事件日期”字段中输入当前日期,然后在“客户”布局的入口中输入设备 ID 号码。
因为“事件日期”字段是匹配字段,并且关系允许在供应行项目表中创建相关记录,所以在“供应行项目::事件日期”字段中会自动输入“客户::事件日期”中的值。
要查看以前日期的出租,请更改“客户::事件日期”字段中的值。FileMaker Pro Advanced 会显示所有具有相同客户 ID 和事件日期的相关记录。