为什么我的外键中的信息没有更新?

时间:2018-11-26 16:18:43

标签: ms-access access-vba

我有一张列出学生信息的表。

在该表中,只有学生的名字是本地名称,其余各列指的是其他表中的外键,其中包含有关地址和法定监护人的信息。

我遇到的问题是,更新地址和监护人表中的信息时,外键未在学生表中更新。

这是为什么?

这是表格的更新方式:

This is how the table should update

这是在向每个表中输入新数据时表的更新方式:

This is how the table updates when entering new data into each table

1 个答案:

答案 0 :(得分:0)

students表中的外键分别用于通过addressguardian表中的主键唯一地标识一条记录。

因此,修改addressguardian表中此类记录的内容不会更改students表中外键的值,因为正在识别同一记录

此外,将新记录添加到addressguardian子表中不会自动填充students父表的外键,因为无法确定来自哪个表的记录。子表应该被选中。

要填充此类字段,您应该创建一个表单,其记录源设置到您的students表中,并创建适当的子表单,其记录源指向每个addressguardian子级表,并通过父表中的外键和子表中的主键链接到主窗体。

然后,当您通过子表单创建新记录时,可以将其与主表单显示的活动记录相关联,并且由于其已链接到子表单,因此应该自动填充外键(提供您已启用参照完整性)。