2024-01-10 22:08:56
在Navicat中设置外码需通过创建表、编辑字段勾选外码选项、选择引用关系并设置级联规则完成。以下是详细步骤说明:
步骤1:创建表结构右键单击目标数据库名称,选择新建表(或通过菜单栏的“表”→“新建表”)。在表设计界面中填写表名称(如“订单”),并添加字段(如“订单ID”“产品ID”“订单日期”等)。其中“产品ID”需作为外码字段,需确保其数据类型与引用表的主键类型一致(如均为INT类型)。
步骤2:设置外码字段右键单击需设为外码的字段(如“产品ID”),选择编辑列。在弹出的对话框中勾选外码选项,此时会激活“外码”选项卡。在该选项卡中:
选择引用表:点击下拉菜单,选择被引用的表(如“产品”表)。
选择引用字段:选择引用表中的主键字段(如“产品ID”)。
验证引用关系:确保当前字段与引用字段的数据类型、长度完全匹配,否则无法建立关联。
步骤3:配置级联规则在“外码”选项卡下方设置更新和删除的级联行为:
更新规则:
级联更新(CASCADE):当引用表的主键值被修改时,子表中对应的外码值自动同步更新。
限制更新(RESTRICT):若子表存在关联记录,则禁止修改引用表的主键值。
置空更新(SET NULL):引用表主键修改后,子表外码值设为NULL(需字段允许NULL值)。
删除规则:
级联删除(CASCADE):删除引用表记录时,子表中所有关联记录自动删除。
限制删除(RESTRICT):若子表存在关联记录,则禁止删除引用表记录。
置空删除(SET NULL):删除引用表记录后,子表外码值设为NULL(需字段允许NULL值)。推荐场景:若需保持数据强一致性(如订单与产品关联),选择级联更新和级联删除;若需保留历史数据(如订单记录不因产品删除而丢失),可选择限制删除或置空删除。
步骤4:保存外码设置完成所有配置后,点击确定保存当前字段的外码设置。若需为其他字段添加外码,重复步骤2-3。最后点击工具栏的保存按钮(或按Ctrl+S)完成表设计。
示例验证:以“订单”表引用“产品”表为例:
注意事项: