温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

数据库参照完整性是什么

发布时间:2026-09-03 15:59:56 来源:亿速云 阅读:82 作者:小樊 栏目:数据库

**数据库参照完整性(Referential Integrity)**是关系型数据库中用于保证数据之间关联关系正确、一致的一种约束机制,属于数据库完整性的重要组成部分。

一、基本定义

参照完整性用来确保:一个表中的外键值,必须是另一个表中已经存在的主键值,或者为 NULL(如果允许)
换句话说,不能引用不存在的数据。

二、核心概念

  • 主键(Primary Key):唯一标识表中一行数据
  • 外键(Foreign Key):指向另一个表的主键
  • 参照表(子表):含外键的表
  • 被参照表(父表):主键被引用的表

三、举例说明

有两个表:

  • 学生表 Student(s_id, name)
  • 选课表 Enroll(s_id, course_id)

Enroll.s_id 是外键,引用 Student.s_id

  • 合法:Enroll 中出现的 s_id 必须在 Student 中存在
  • 非法:在 Enroll 中插入一个 s_id = 999,但 Student 中没有 999

四、作用

  1. 防止“脏引用”(指向不存在的数据)
  2. 保证多表数据逻辑一致
  3. 支持正确的关联查询与统计

五、常见约束规则

当父表数据被修改或删除时,通常可设置:

  • RESTRICT / NO ACTION:不允许删除或修改被引用的主键
  • CASCADE:父表删除/更新时,子表相应删除/更新
  • SET NULL:父表删除/更新时,子表外键置为 NULL(需允许 NULL)

六、一句话总结

参照完整性就是:外键必须“有所指”,数据库不允许你引用一个不存在的记录。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI