什么是关系完整性规则?关系数据库中,常见的完整性规则有哪些,试举例说明

什么是关系完整性规则?关系数据库中,常见的完整性规则有哪些,试举例说明,第1张

关系完整性主要包括域完整性、实体完整性和参照完整性三种。

1.域完整性

域完整性是对数据表中字段属性的约束,它包括字段的值域、字段的类型及字段的有效规则等约束,它是由确定关系结构时所定义的字段的属性决定的。

2.实体完整性

实体完整性是对关系中的记录唯一性,也就是主键的约束。准确地说,实体完整性是指关系中的主属性值不能为Null且不能有相同值。

3.参照完整性

参照完整性是对关系数据库中建立关联关系的数据表间数据参照引用的约束,也就是对外键的约束。准确地说,参照完整性是指关系中的外键必须是另一个关系的主键有效值,或者是NULL。

关系的完整性约束通常包括域完整性,实体完整性、参照完整性和用户定义完整性。

1、域完整性是保证数据库字段取值的合理性,是最简单、最基本的约束。在当今的关系DBMS中,一般都有域完整性约束检查功能。

2、实体完整性,作用是指在传输、存储信息或数据的过程中,确保信息或数据不被未授权的篡改或在篡改后能够被迅速发现。按实体完整性规则要求,主属性不得取空值,如主关键字是多个属性的组合,则所有主属性均不得取空值。

3、参照完整性,作用是定义建立关系之间联系的主关键字与外部关键字引用的约束条件。关系数据库中通常都包含多个存在相互联系的关系,关系与关系之间的联系是通过公共属性来实现的。根据实体完整性要求,主关键字不得取空值。

4、用户定义完整性作用是根据应用环境的要求和实际的需要,对某一具体应用所涉及的数据提出约束性条件。这一约束机制一般不应由应用程序提供,而应有由关系模型提供定义并检验,用户定义完整性主要包括字段有效性约束和记录有效性。

扩展资料:

关系完整性模型

关系完整性模型中常用的关系 *** 作包括:选择、投影、连接、并、交、差等查询 *** 作和增加、删除、修改 *** 作两大部分。查询的表达能力是其中最重要的部分。

关系 *** 作的的特点是集合 *** 作方式,即 *** 作对象和结构都是集合。这种 *** 作方式也为一次一集合的方式。相应地,非关系数据模型的数据 *** 作方式则为一次一记录的方式。

早期的关系 *** 作能力通常用代数方式或逻辑方式来表示,分别称为关系代数和关系演算。关系代数用对关系的运算来表达查询要求的方式。关系代数、元组关系演算和域关系演算三种语言在表达能力是完全等价的。

关系语言是一种高度非过程化的语言,用户不必请求DBA为其建立特殊的存取路径,存取路径的选择由DBMS的优化机制来完成,此外,用户不必求助于循环结构就可以完成数据 *** 作。

参考资料来源:百度百科-关系完整性约束

参考资料来源:百度百科-实体完整性

1、实体完整性

实体完整性要求每个表都有唯一标识符,每一个表中的主键字段不能为空或者重复的值。

2、参照完整性

参照完整性要求关系中不允许引用不存在的实体。设定相应的更新删除插入规则来更新参考表。

3、用户自定义完整性

用户自定义完整性是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。

也就是说:某个表你设置这一列为null,not null,default,check等。包括:非空约束、唯一约束、检查约束、主键约束 、外键约束。

扩展资料:

关系模型的数据完整性约束的实施:

实现完整性约束的方法依类别不同而不同。完整性约束可以分为两大类:静态约束和动态约束。

静态约束 静态约束是对数据库状态的约束,有可分为固定约束、隐含约束和显示约束。[1]

固定约束 是数据模型固有的约束,如关系的属性是原子的,即满足INF的约束。固有约束在DBMS实现时已经考虑。

隐含约束 指隐含于数据模式中的约束,一般用数据定义语言(DDL)语句说明,并存于数据目录中。例如,域完整性约束、实体完整性以及参照完整性约束,都由相应的DDL语句说明。

参考资料:百度百科 数据完整性


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9989324.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存