关系模式的完整性约束

说说我对完整性约束的理解,首先讲一下什么是完整性

书上对完整性约束的概念是指保证数据的正确性、有效性和相容性的措施。其实就是对输入的数据进行了约束和规范,不符合条件的数据无法写入

一、关系的完整性约束条件包括以下四类:

(1)域完整性约束

定义属性的数据类型和范围作为条件。例如:定义 name char(10); 则在插入记录时记录name值不能写int类型也不能超过char(10)范围

(2)实体完整性约束

等同于primary key 约束(not null & unique)。表中主键值唯一,以保证表中所有行的唯一性,即所有记录都可区分

(3)参照(引用)完整性约束

等同于foreign key约束。F是表 R中的一个或一组属性,F不是表R的键,但F是表S的主键,即表R引用了表S的主键值,则称F是表R的外键。F为NULL或者参照表S中的主键值进行填写

(4)用户定义的完整性约束

等同于check约束。指用户对某一具体数据指定的约束条件进行校验。 例如某个属性必须取唯一值,规定某个属性的取值范围等

二、完整性约束又分为列完整性约束和表完整性约束:

列完整性约束

(1)not null 非空 (2)unique 唯一 (3) not null unique 非空且唯一 (4) default 默认值

表完整性约束

(1)primary key 主键 (2) foreign key 外键 (3)check 检查

    原文作者:Tang-wyx
    原文地址: https://blog.csdn.net/m0_58283596/article/details/124367956
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞