实验八 数据完整性 实验指导

实验八 数据完整性 实验指导

ID:11183646

大小:274.50 KB

页数:14页

时间:2018-07-10

实验八 数据完整性 实验指导_第1页
实验八 数据完整性 实验指导_第2页
实验八 数据完整性 实验指导_第3页
实验八 数据完整性 实验指导_第4页
实验八 数据完整性 实验指导_第5页
资源描述:

《实验八 数据完整性 实验指导》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验八数据完整性实验指导一、完整性的概念数据完整性是指存储在数据库中的数据正确无误,并且相关数据具有一致性。数据库中的数据是否完整,关系到数据库系统能否真实的反映现实世界。立足在“学生”表中学生的学号要具有唯一性,学生性别只能是男或女,其所在的系部、专业、班级必须是存在的,否则,就会出现数据库中的数据与现实不符的现象。如果数据库中总存在不完整的数据,那么它就没有存在的必要了,因此,实现数据的完整性在数据库管理系统中十分重要。根据数据完整性机制所作用的数据库对象和范围不同,数据完整性可分为实体完整性、域完整性、参照完整性和用户定义完整性4种类型。1.实体完整性

2、实体是表中的记录,表中的一条记录就是一个实体。实体完整性要求在表中不能存在完全相同的记录,而且每条记录都要具有一个非空且不重复的主键值。这样,就可以保证数据所代表的任何事物都不重复、可以区分。例如,学生表中的学号必须唯一,并且不能为空,这样就可以保证学生记录的唯一性。实现实体完整性的方法主要有主键约束、唯一索引、唯一约束和制定IDENTITIY属性。2.域完整性域完整性是指特定列的项的有效性。域完整性要求向表中指定列输入的数据必须具有正确数据类型、格式及有效的数据范围。例如,假设现实中学生的成绩为百分制,则在“课程注册”表中,向成绩列输入的数据,不能出现字符

3、,也不能是小于0或大于100的数值。实现域完整性的方法主要有CHECK约束、外键约束、默认约束、非空约束、规则及在建表时设置的数据类型。3.参照完整性参照完整性是指在有关联的两个或两个以上的表中,通过使用主键和外键或唯一键和外键之间的关系,使表中的键值在相关表中保持一致。引用完整性要求不能引用不存在的值。如果一个键值发生更改,则在整个数据库中,对该键值和所有引用要进行一致性的更改。例如,在学生表中的“班级代码”列的值必须是在班级表中“班级代码”列中存在的值,防止在录入学生记录时将学生分配到一个不存在的班级中。在SQLServer2005中,参照完整性是通过F

4、OREIGNKEY和CHECK约束,以外键与主键之间或外键与唯一键之间的关系为基础。4.用户定义完整性用户定义的完整性是应用领域需要遵守的约束条件,其允许用户定义不属于其他任何完整性分类的特定业务规则。所有的完整性类型(包括CREATETABLE中所有列级约束和表级约束、存储过程以及触发器)都支持用户定义完整性。14二、使用约束约束是SQLServer提供的自动强制数据完整性的一种方法,它通过定义列的取值规则来维护数据完整性。1.约束的类型SQLServer2005支持的约束有NOTNULL(非空)约束、CHECK(检查)约束、UNIQUE(唯一)约束、PR

5、IMARYKEY(主键)约束、FOREIGNKEY(外键)约束和DEFAULT(默认)约束。lPRIMARYKEY约束。主键约束用来强制实现数据的实体完整性,它是在表中定义一个主键来唯一标识表中每行记录。例如,在“学生”表中可以将学生编号设置为主键,用来保证表中的学生记录具有唯一性。一般情况下,数据库中的每个表都包含一列或一组列来唯一标识表中的每一行记录的值。lUINQUE约束。唯一约束用来强制实现数据的实体完整性,它主要用来限制表的非主键列中不允许输入重复值。例如在“专业”表中可以将专业代码作为主键用来保证记录的唯一性。如果不允许一个学院有同名专业存在,应

6、该为专业名称列定义唯一约束,以保证非主键列中不出现重复值。lNOTNULL约束。非空约束用来强制实现数据的域完整性,它用于设定某列值不能为空。如果指定某列不能为空,则在添加记录时,必须为此列添加数据。例如,对于“班级表,存在一个班,就必须存在其相应专业,这时,就应该设置专业代码不能空。注意:定义了主键约束和标识列属性的列不允许为空。lCHECK约束。检查约束用来强制数据的域完整性,它使用逻辑表达式来限定表中的列可以接受的数据范围。例如,对于学生成绩的取值应限定在0~100之间,这时,就应该为成绩列创建检查约束,使其取值在正常范围内。lDEFAULT约束。默认

7、约束用来强制数据的域完整性,它为表中某列建立一个默认值。插入记录时,如果没有为该列提供输入值,系统就会自动将默认值赋给该列。例如,对于“学生“表中的性别字段,可以提供其默认值为男,当输入记录时,对于男生就可以不输入性别数据,而由默认值提供。lFOREIGNKEY约束。外键是指一个表中的一列或列组合,它虽不是该表的主键,却是另一个表的主键。通过外键约束可以为相关联的表建立联系,实现数据的参照完整性,维护两表之间数据的一致性关系。例如,如果要求“学生”表中“班级代码”列的取值,必须是“班级”表中“班级代码”列的列值之一,就应该在“学生”表的“班级代码”上创建外键

8、约束,从而使“学生”表和“班级”表中的“班级代码”具

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。