MS Access - 多对多关系


在本章中,让我们了解多对多关系。要表示多对多关系,您必须创建第三个表(通常称为联结表),它将多对多关系分解为两个一对多关系。为此,我们还需要添加一个连接表。让我们首先添加另一个表tblAuthers

表格作者

现在让我们创建一个多对多关系。我们有不止一位作者从事多个项目,反之亦然。如您所知,我们在 tblProjects 中有一个 Author 字段,因此我们为其创建了一个表。我们不再需要这个字段了。

TblAuthers 描述

选择作者字段并按删除按钮,您将看到以下消息。

对话框

单击“是”。我们现在必须创建一个连接表。该连接表中有两个外键,如以下屏幕截图所示。

外键

这些外键字段将是链接在一起的两个表( tblAutherstblProjects )中的主键。

要在 Access 中创建复合键,请选择这两个字段,然后从表工具设计选项卡中,您可以直接单击该主键,这将标记这两个字段,而不是其中一个。

表格工具设计

这两个字段的组合是表的唯一标识符。现在让我们将此表保存为tblAuthorJunction

将多对多关系组合在一起的最后一步是返回到该关系视图并通过单击Show Table创建这些关系。

选择上面三个突出显示的表,然后单击“添加”按钮,然后关闭此对话框。

突出显示的表格

单击并拖动tblAuthors中的AuthorID字段,并将其放置在tblAuthorJunctionAuthorID的顶部。

TblAuthers 连接点

您所创建的关系将被 Access 视为一对多关系。我们还将强制执行引用完整性。现在让我们打开级联更新并单击“创建”按钮,如上面的屏幕截图所示。

级联

现在让我们按住ProjectID ,将其从tblAuthorJunction拖放到ProjectID的正上方。

参考键

我们将强制执行引用完整性级联更新相关字段

级联更新

以下是多对多关系。

多对多