ACCESS表的关系

597次阅读
没有评论

共计 1826 个字符,预计需要花费 5 分钟才能阅读完成。

提醒:本文最后更新于 2020-08-07 14:45,文中所关联的信息可能已发生改变,请知悉!

表关系的类型

ACCESS 中表的关系有三种类型,他们是一对一、一对多、多对多。

一对一关系

一对一关系,在第一个表中的每个记录可以仅有一个匹配记录的第二个表中,,然后在第二个表中的每条记录可以仅有一个匹配记录的第一个表。此类型的关系不常见,因为在大多数情况下,将以这种方式相关的信息存储在同一个表。您可以使用一对一关系将分成许多字段,或隔离出于安全考虑,表的一部分或存储信息仅适用于主表的子集的表。当执行识别这种关系时,请两个表必须共享公共字段。

一对多关系

请考虑订单跟踪数据库,包括客户表和订单表。客户可以将添加任意数量的订单。是这样,任何客户表中表示的客户,可以有多个订单表中表示的订单。客户表和订单表之间的关系,因此,是一个一对多关系。

表示一对多关系数据库设计中,执行关系的 "一" 方的主键和将其作为其他字段或域添加到关系的 "多" 方表中。在此例中,例如,添加新字段 - 客户表中的 ID 字段 — 到订单表并将其命名客户 id。Access 可以再使用的客户 ID 号订单表中以找到正确的每个订单的客户。

多对多关系

请考虑产品表和订单表之间的关系。单个订单可以包含多个产品。另一方面,单个产品可以出现在多个订单。因此,订单表中的每条记录,可以有许多记录在产品表中。此外,在产品表中每条记录,可以有许多记录中订单表。这种关系称为多对多关系,因为任何产品,可以有多个订单,然后按任何顺序,对于可能有许多产品。请注意,检查表之间的现有多对多关系,务必要考虑的关系的两面。

要表示多对多关系,您必须创建第三个表,该表通常称为联接表,它将多对多关系划分为两个一对多关系。将这两个表的主键都插入到第三个表中。因此,第三个表记录关系的每个匹配项或实例。例如,“订单”表和“产品”表有一种多对多的关系,这种关系是通过与“订单明细”表建立两个一对多关系来定义的。一个订单可以有多个产品,每个产品可以出现在多个订单中。

创建多对多关系

在多对多关系中,两个表的每条记录可以与另一个表中的零条、一条或多条记录相关。多对多关系理解起来比较困难,创建多对多关系与创建一对一或一对多关系的方法不同。要创建后两种这些关系,只需用线条连接相应的字段即可。而创建多对多关系,则需要创建一个新表以连接其他两个表。此新表称为 中间 (有时称为 链接 联接 表)。

在上文所述的情景中,你创建了“订单明细”表,对于任意给定订单中的每一项,该表中的记录包含其在“订单”表中 ID 和“产品”表中 ID。使用两表的组合键为该表创建主键。

在我们的案例中,Elizabeth Andersen 的订单编号 1012 包含产品 12、15 和 30。这意味着订单明细条目如下所示:

订单 ID

产品 ID

1012 12
1012 15
1012 30

Elizabeth 订购了一个产品 12、一个产品 15 和五个产品 30。我们不能在另一行中添加 1012 和 30,因为订单 ID 和产品 ID 共同构成了我们的主键,主键 必须 是唯一的。作为替代,我们将“数量”字段添加到“订单明细”表。

订单 ID 产品 ID 数量
1012 12 1
1012 15 1
1012 30 5

创建中间表

  1. 选择“创建 ”>“”。
  2. 选择“保存ACCESS 表的关系
  3. 对于“表单名称 ”,输入描述性标题。为指示其用途,可在表单名称中包含 联接 中间

在中间表中创建字段

Access 将自动添加 ID 字段作为表中第一列。更改该字段以匹配多对多关系中的第一个表的 ID。例如,如果第一个表是名为“订单 ID”的“订单”表,并且其主键是数字,请将新表中“ID”字段的名称更改为“订单 ID”,并使用 数字 作为数据类型。

  1. 在“数据表视图”中,选择“ID”列标题,然后键入该字段的新名称。
  2. 选择刚刚重命名的字段。
  3. 在“字段 ”选项卡上的“ 数据类型 ”下,选择与原始表中的字段匹配的数据类型,如 数字 短文本
  4. 选择“单击以添加”,然后选择与第二个表中主键相匹配的数据类型。在已选中的列标题中,键入第二个表中的主键字段的名称,如“产品 ID”。
  5. 若要跟踪有关这些记录的任何其他信息(如项数),请创建更多字段。

组合主 ID 字段

创建包含要连接的两个表中 ID 的字段后,请根据这些 ID 在中间表中创建主键。

  1. 在“设计视图”中,打开中间表。
  2. 选择包含 ID 的两行。(如果你按照前述过程操作,则为前两行。)
  3. 选择“设计 ”>“ 主键”。
    两个 ID 字段旁边将显示“键”图标。

    ACCESS 表的关系

连接三个表以创建多对多关系

在每个表的主键字段和中间表的匹配字段之间创建一对多关系,以完成多对多关系。有关如何执行此操作的详细信息,请参阅表关系入门。

完成后,关系应如下所示:

ACCESS 表的关系

 

正文完
 
水东柳
版权声明:本站原创文章,由 水东柳 2018-09-26发表,共计1826字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)