Page tree
Skip to end of metadata
Go to start of metadata

活字格视频
倍速:
0.5X
1.0X
1.25X
1.5X
2.0X

1.描述

设置关联字段时,在“高级设置”中可开启外键约束,设置子表的更新模式。

  • 约束更新:更新主表中的记录时,如果更新的为关联字段的值,且有对应的从表记录,则不允许更新,更新将失败。
  • 置空更新:更新主表中的记录时,如果更新的为关联字段的值,且有对应的从表记录,则主表中的记录被更新,对应的从表不更新,但关联主表的字段的值将变为空。
  • 级联更新:更新主表中的记录时,如果更新的为关联字段的值,且有对应的从表记录,则主表中的记录和对应的从表记录都将被更新。

例如,在订单表列表中,单击订单编号可弹出订单更新页面,在该页面中进行订单的更新。本节以订单表和订单详情表为例,介绍子表的三种更新模式。

图1  更新记录

2.约束更新

更新主表中的记录时,如果更新的为关联字段的值,且有对应的从表记录,则不允许更新,更新将失败。

在订单详情表的关联字段“订单表的订单编号”上右击,选择“设置关联字段”,弹出“关联字段设置”对话框后,单击“高级设置”,勾选“开启外键约束”,并选择删除模式下的“约束更新”。

图2  设置约束更新

运行页面,选中订单表中的一条记录,例如选择订单A003,该订单有两条从表记录,单击“A003”弹出更新页面。

“编号”为关联字段,更新编号“A003”为“A008”,您会看到页面弹出“更新数据库失败”的信息,该记录更新失败。

图3  更新失败


3.置空更新

更新主表中的记录时,如果更新的为关联字段的值,且有对应的从表记录,则主表中的记录被更新,对应的从表不更新,但关联主表的字段的值将变为空。

在订单详情表的关联字段“订单表的订单编号”上右击,选择“设置关联字段”,弹出“关联字段设置”对话框后,单击“高级设置”,勾选“开启外键约束”,并选择删除模式下的“置空更新”。

图4  设置置空更新

运行页面,选中订单表中的一条记录,例如选择订单A003,该订单有两条从表记录,单击“A003”弹出更新页面。

“编号”为关联字段,更新编号“A003”为“A008”,订单表中记录更新成功。

图5  更新记录

在数据库中可以看到,订单A003的记录已被更新为A008,从表订单详情表中的对应记录没有更新,但关联主表的字段“订单表的订单编号”的值变成空。

图6  主从表数据变化


4.级联更新

更新主表中的记录时,如果更新的为关联字段的值,且有对应的从表记录,则主表中的记录和对应的从表记录都将被更新。

在订单详情表的关联字段“订单表的订单编号”上右击,选择“设置关联字段”,弹出“关联字段设置”对话框后,单击“高级设置”,勾选“开启外键约束”,并选择删除模式下的“级联更新”。

图7  设置级联更新

运行页面,选中订单表中的一条记录,例如选择订单A003,该订单有两条从表记录,单击“A003”弹出更新页面。

“编号”为关联字段,更新编号“A003”为“A008”,订单表和订单详情表中编号都更新成功。

图5  更新记录

在数据库中可以看到,订单表和订单详情表中A003的记录都已被更新为A008。

图9  主从表数据变化


回到顶部

  • No labels