单一标准关系

在单一标准关系中,一个字段中的数据与另一个字段中的数据匹配。

例如,当文本字段 A 和文本字段 B 的值相同时,某个表中的记录将与另一个表中的任何记录相关。

两个字段间带有连线的两个表,表示单一标准关系

使用单一标准关系

当您要基于一个共同值(如序列号或 ID 号)关联两个表时,请使用单一标准关系。例如:

  1. 创建带有两个表的数据库:
    • 客户,用于存储姓名和地址
    • 联系人,存储电话号码、电话号码类型(如工作、家庭、手机等)以及电子邮件地址

    由于一个客户可能有多个电话号码和电子邮件地址,因此该数据拆分到两个表中。

  2. 创建以下字段:
  3. 字段名

    注释

    客户

    客户 ID

    数值字段

     

    名字

    文本字段

     

    姓氏

    文本字段

     

    地址 1

    文本字段

     

    城市

    文本字段

     

    状态

    文本字段

     

    国家/地区

    文本字段

    联系人

    电话号码

    文本字段

     

    电话类型

    文本字段

     

    电子邮件地址

    文本字段

     

    电子邮件类型

    文本字段

     

    客户 ID

    数值字段

  4. 使用“字段的选项”对话框将“客户::客户 ID”字段设置为自动输入一个序列号并验证该字段存储唯一值。请参阅设置字段的选项

    这些设置可以确保“客户”表中每个记录都具有唯一的 ID 号。

    在“联系人”表中,“客户 ID”是一个简单的数值字段,因此不设置任何自动输入选项,但是设置该字段以验证为非空。

  5. 在关系图中,在每个表中的“客户 ID”字段之间创建关系。(“客户 ID”是每个表中的匹配字段。)
  6.  

    客户表和联系人表之间的单一标准关系

  7. 在“编辑关系”对话框中:
    • 为联系人表选择“允许通过此关系创建记录”。当您在空白入口行中输入电话号码时,FileMaker Pro 会创建该电话号码的相关记录。

      由于定义的关系允许在联系人表中创建相关记录,因此客户记录中的客户 ID 号将自动插入到每个新的相关记录的联系人表中的客户 ID 字段中。这允许联系人表中的许多记录关联到客户表中的一条记录。

    • 为联系人表选择“在另一个表中删除记录后,请删除此表中的相关记录”。如果已经删除匹配的联系人记录,便不必再保留旧的电话号码。
  8. 在客户布局上的联系人表添加一个入口,并向此入口添加这些相关字段:电话号码、电子邮件地址。

当您在客户表的空白入口行中输入电话号码或电子邮件地址时,FileMaker Pro 会为联系人表中的该电话号码或电子邮件地址创建相关的记录。