sql 外键约束实例

结论

当一个表A的列a为另一个表B的列b的外键时

  1. 如果A的列a中删除的值在B的b列中存在,执行被禁止
  2. 如果B的列b中插入的值在A中的a列中没有,执行被禁止

在Oracle中的测试

1.创建table cc 其中ID 是主键
在这里插入图片描述
2.在主键上插入数据,并测试主键唯一性
在这里插入图片描述

3.创建表 ccpre
在这里插入图片描述
4.建立外键约束,把ccpre中的u_id设为外键
在这里插入图片描述
5.外键性质测试
5.1在ccpre中插入u_id在cc表中不存在
cc表中id有以下两条:
在这里插入图片描述
在ccpre中插入一条数据u_id 为3的数据
在这里插入图片描述
5.2.删除cc表中的id=1的行,这行在ccpre中有u_id=1的表
在这里插入图片描述
5.3删除cc表中的id=2的行,这行在ccpre中没有u_id=2的表
在这里插入图片描述

在MySQL中的测试

在这里插入图片描述

发布了41 篇原创文章 · 获赞 136 · 访问量 15万+

猜你喜欢

转载自blog.csdn.net/songguangfan/article/details/95448802