zoukankan
html css js c++ java
数据库完整性约束
(1)域完整性:是指一个列的输入有效性,是否允许为空值。强制域完整性的方法有:限制类型(通过设定列的数据类型)、格式(通过CHECK约束和规则)或可能值的范围(通过FOREIGN KEY约束、CHECK约束、
DEFAULT
定义、NOT
NULL
定义和规则)。如:学生的考试成绩必须在0~100之间,性别只能是“男”或“女”。
(2)实体完整性:是指保证表中所有的行唯一。实体完整性要求表中的所有行都有一个唯一标识符。这个唯一标识符可能是一列,也可能是几列的组合,称为主键。也就是说,表中的主键在所有行上必须取唯一值。强制实体完整性的方法有:索引、
UNIQUE
约束、PRIMARY KEY约束或IDENTITY属性。如:student表中sno(学号)的取值必须唯一,它唯一标识了相应记录所代表的学生,学号重复是非法的。学生的姓名不能作为主键,因为完全可能存在两个学生同名同姓的情况。
(3)参照完整性:是指保证主关键字(被引用表)和外部关键字(引用表)之间的参照关系。它涉及两个或两个以上表数据的一致性维护。外键值将引用表中包含此外键的记录和被引用表中主键与外键相匹配的记录关联起来。在输入、更改或删除记录时,参照完整性保持表之间已定义的关系,确保键值在所有表中一致。这样的一致性要求确保不会引用不存在的值,如果键值更改了,那么在整个数据库中,对该键值的所有引用要进行一致的更改。参照完整性是基于外键与主键之间的关系。例如学生学习课程的课程号必须是有效的课程号,score表(成绩表)的外键cno(课程号)将参考course表(课程表)中主键cno(课程号)以实现数据完整性。
(4)用户定义完整性
实体完整性和参照完整性适用于任何关系型数据库系统,它主要是针对关系的主关键字和外部关键字取值必须有效而做出的约束。用户定义完整性则是根据应用环境的要求和实际的需要,对某一具体应用所涉及的数据提出约束性条件。这一约束机制一般不应由应用程序提供,而应有由关系模型提供定义并检验,用户定义完整性主要包括字段有效性约束和记录有效性。
域完整性、实体完整性及参照完整性分别在列、行、表上实施。数据完整性任何时候都可以实施,但对已有数据的表实施数据完整性时,系统要先检查表中的数据是否满足所实施的完整性,只有表中的数据满足了所实施的完整性,数据完整性才能实施成功。
查看全文
相关阅读:
CI框架基本配置/教你学习CI框架codelgniter
CI框架 简介
PHP CI框架目录结构及运行机制
[老老实实学WCF] 第三篇 在IIS中寄存服务
[老老实实学WCF] 第二篇 配置WCF
[老老实实学WCF] 第一篇 Hello WCF
Js获取当前日期时间及其它操作
当<script>中的type等于text/html的妙用
asp.net MVC3 仿照博客园功能 异常处理
jquery.validate使用攻略
原文地址:https://www.cnblogs.com/yunfeioliver/p/7872957.html
最新文章
js校验身份证
(转)每天一个linux命令(28):tar命令
(转)Maven项目标准目录结构
oracle中select clob的返回类型
在echarts中自定义提示框内容
ibatis中in语句参数传入方法
ibatis中使用like模糊查询
js获取当前日期时间“yyyy-MM-dd HH:MM:SS”
Oracle 排序中使用nulls first 或者nulls last 语法
json中把非json格式的字符串转换成json对象再转换成json字符串
热门文章
oracle时间操作结合to_char和to_date使用
echarts报表
oracle中floor函数和to_number函数区别
php做推送服务端实现ios消息推送
Emoji表情图标在iOS与PHP之间通信及MySQL存储
手游后台PVP系统网络同步方案总结
网络游戏服务器架构
大型多人在线角色扮演类网络游戏角色战斗系统的设计与实现
socket心跳检测
CodeIgniter 框架在Apache服务器下去掉index.php 总结
Copyright © 2011-2022 走看看