Oracle数据库-外键约束

还是一样,首先我们先来了解一下什么是外键约束:

    所谓外键就是为了建立表与表之间的关系。外键是可以重复的,可以为空的。

    通常情况下一个表的外键是另外一张表的主键。

在企业实战中有80%的企业不使用外键约束,有20%的企业使用外键约束,所以,

外键约束加与不加,看的是实际情况下的公司要求是怎样的

那问题来了,外键约束的作用是什么??

1.

    就是当两张表关联时,是通过id关联的,

    外键所存在的表的字段正常情况下是可以随便填的,但没有丝毫意义,

    当添加了外键约束时,这个数就被限制起来了,只允许填入主表所有的id,

    如果在Oracle数据库中手动或代码写入无任何意义的id,

    则会报一个 " 违反完整约束条件,未找到父项关键字 " 的错误

2.

    就是在当你设置了外键约束后,删除主表是无法删除的,只有通过先删除子表,再删除主表才可以删除

    会报一个"违反完整约束条件-已找到子记录"

    打个比方说,班级表与学生表相关联,班级表为主表,学生表是子表,那么这俩表相关联后就无法先删除班级表

    因为:"班级下还有学生"

那如何通过代码实现外加约束的创建:

    alter  table  表名  add  constraint  外键约束名称  foreign  key  (外键字段名)  reference  参考的表名(id字段名);


  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

槐序二十四

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值