1 / 57
文档名称:

数据库完整性课件.ppt

格式:ppt   大小:1,091KB   页数:57页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据库完整性课件.ppt

上传人:feng1964101 2022/11/26 文件大小:1.07 MB

下载得到文件列表

数据库完整性课件.ppt

文档介绍

文档介绍:该【数据库完整性课件 】是由【feng1964101】上传分享,文档一共【57】页,该文档可以免费在线阅读,需要了解更多关于【数据库完整性课件 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。*
*
数据库系统概论
AnIntroductiontoDatabaseSystem
第五章数据库完整性
第五章数据库完整性
什么是数据库的完整性
1)数据的正确性和相容性
2)防止不合语义的数据进入数据库。
例:学生的年龄必须是整数,取值范围为14--29;
学生的性别只能是男或女;
学生的学号一定是唯一的;
学生所在的系必须是学校开设的系;
3)完整性:是否真实地反映现实世界
完整性控制机制


一般在 INSERT,UPDATE,DELETE执行后开始检查,也可以在事务提交时检查。

拒绝或级联执行等。
第五章数据库完整性








PRIMARYKEY定义,表级完整性约束或列级完整性约束

每当用户程序对基本表插入一条记录或者对主码列进行更新操作时,按照实体完整性规则,系统将进行检查:
主码值是否唯一,如果不唯一则拒绝插入或修改
主码各属性是否为空,只要有一个为空就拒绝插入或修改
方法:全表扫描或者索引查找(一般在主码上自动建立一个索引)


创建表时,FOREIGNKEY定义

以SC和S为例,四种情况:
SC中增加一个元组,而在student中找不到相应的元组
修改SC中的一个元组……
从student删除一个元组……
修改student中的一个元组……

当上述的不一致发生时,系统可以采用以下的策略:
1拒绝(NoAction)执行
不允许该操作执行。该策略一般设置为默认策略。
2级联(Cascade)操作
当删除或修改被参照表(Student)的一个元组造成了与参照表(SC)的不一致,则删除或修改参照表中的所有造成不一致的元组。
例如:删除Student表中的元组,Sno的值为200215121,=‘200215121’的所有元组。

3设置为空值
当删除或修改被参照表的一个元组时造成了不一致,则将参照表中的所有造成不一致的元组对应属性设置为空值。
例:

因此,对于参照完整性,除了应该定义外码,还应定义外码列是否允许空值。
一般,当对参照表和被参照表的操作违反了参照完整性,系统选用默认策略,即拒绝执行。如果想让系统采用其他的策略则必须在创建表的时候显示地加以说明。