外键约束和建模
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了外键约束和建模相关的知识,希望对你有一定的参考价值。
声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。
外键约束和建模
对于mysql的关系,我们可以使用建模软件进行数据库表的详细说明,PowerDesigner和sqlyog都可以用来建立关系模型。
PowerDesigner好处在于可以对表进行中文备注,sqlyog不能有中文注释。
PowerDesigner建模示意图如下:
sqlyog建模需要点击新架构设计器:
建模示意图如下:
外键约束可双击关系线添加外键约束,外键约束有四种不同的选项:CASCADE, SET NULL, NO ACTION, RESTRICT。
1.CASCADE : 从父表中删除或更新对应的行,同时自动的删除或更新自表中匹配的行。[ON DELETE CANSCADE和ON UPDATE CANSCADE都被InnoDB所支持。]
2.SET NULL: 从父表中删除或更新对应的行,同时将子表中的外键列设为空。[注意,这些在外键列没有被设为NOT NULL时才有效。ON DELETE SET NULL和ON UPDATE SET SET NULL都被InnoDB所支持。]
3.NO ACTION: InnoDB拒绝删除或者更新父表。
4.RESTRICT: 拒绝删除或者更新父表。[指定RESTRICT(或者NO ACTION)和忽略ON DELETE或者ON UPDATE选项的效果是一样的。]
操作示图如下:
四种选项可在下拉列表中设置。
以上是关于外键约束和建模的主要内容,如果未能解决你的问题,请参考以下文章