电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

课程名称数据库系统课件

  • 资源ID:137930708       资源大小:157KB        全文页数:61页
  • 资源格式: PPT        下载积分:20金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要20金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

课程名称数据库系统课件

An Introduction to Database System,1,数据库系统概论 An Introduction to Database System 第五章 数据库完整性,An Introduction to Database System,2,第五章 数据库完整性,什么是数据库的完整性 数据的正确性和相容性 防止不合语义的数据进入数据库。 例: 学生的年龄必须是整数,取值范围为14-50; 学生的性别只能是男或女; 学生的学号一定是唯一的; 学生所在的系必须是学校开设的系; 完整性:能否真实地反映现实世界,An Introduction to Database System,3,完整性控制机制,1.提供定义完整性约束条件的机制 2.提供完整性检查的方法 3.违约处理,An Introduction to Database System,4,完整性约束条件定义,完整性约束条件:数据模型的组成部分,约束数据库中数据的语义 DBMS应提供定义数据库完整性约束条件,并把它们作为模式的一部分存入数据库中,An Introduction to Database System,5,完整性控制机制,检查用户发出的操作请求是否违背了完整性约束条件,An Introduction to Database System,6,违约反应,如果发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。,An Introduction to Database System,7,第五章 数据库完整性,5.1 实体完整性 5.2 参照完整性 5.3 用户定义的完整性 5.4 完整性约束命名子句 5.5 域中的完整性限制 5.6 触发器 5.7 小结,An Introduction to Database System,8,5.1.1 实体完整性定义,关系模型的实体完整性在CREATE TABLE中用PRIMARY KEY 定义。 单属性的码: 定义为列级约束条件 定义为表级约束条件 多属性的码: 定义为表级约束条件 例1:将Student 表中的Sno属性定义为码: CREATE TABLE Student (Sno CHAR(9) PRIMARY KEY, Sname CHAR(20) NOT NULL, Ssex CHAR(2), Sage SMALLINT, Sdept CHAR(20);,CREATE TABLE Student (Sno CHAR(9), Sname CHAR(20) NOT NULL, Ssex CHAR(2), Sage SMALLINT, Sdept CHAR(20) PRIMARY KEY (Sno );,An Introduction to Database System,9,实体完整性定义 举例,例2:将SC表中的Sno,Cno属性组定义为码 CREATE TABLE SC(Sno CHAR(9) NOT NULL, Cno CHAR(4) NOT NULL, Grade SMALLINT, PRIMARY KEY (Sno,Cno) );,An Introduction to Database System,10,5.1.2 实体完整性检查和违约处理,对定义主码的表,当用户要插入一条记录或对主码列进行更新操作时,要进行实体完整性规则自动检查。 检查主码值是否唯一,若不唯一则拒绝插入或修改; 检查主码的各个属性是否为空,只要有一个为空 就拒绝插入或修改。 检查方法:全表扫描 B+树索引,An Introduction to Database System,11,B+树索引,25,3 51,51 68 79,3 15 30,79 84 93,68 69 71 76,51 54 65,30 41,15 20 25,3 7,25,An Introduction to Database System,12,第五章 数据库完整性,5.1 实体完整性 5.2 参照完整性 5.3 用户定义的完整性 5.4 完整性约束命名子句 5.5 域中的完整性限制 5.6 触发器 5.7 小结,An Introduction to Database System,13,5.2.1 参照完整性定义,关系模型的参照完整性在CREATE TABLE中用FOREIGN KEY 短语定义哪些列为 外码,用REFERENCES短语指明外码参照哪些表的主码。 例3: CREATE TABLE SC (Sno CHAR(9) NOT NULL, Cno CHAR(4) NOT NULL, Grade SMALLINT, PRIMARY KEY (Sno,Cno), FOREIGN KEY (Sno) REFERENCES Student(Sno), FOREIGN KEY (Cno) REFERENCES Course(Cno);,An Introduction to Database System,14,5.2.2参照完整性检查和违约处理,表5.1 可能破坏参照完整性的情况及违约处理,An Introduction to Database System,15,例:职工部门数据库包含职工表EMP和部门表DEPT 1 DEPT关系的主码为部门号Deptno 2 EMP关系的主码为职工号Empno, 外码为部门号Deptno 称DEPT为被参照关系或目标关系,EMP为参照关系 RDBMS实现参照完整性时需要考虑以下4方面:,5.2.2参照完整性检查和违约处理,An Introduction to Database System,16,1. 外码是否可以接受空值的问题,外码是否能够取空值:依赖于应用环境的语义 实现参照完整性: 系统提供定义外码的机制 定义外码列是否允许空值的机制,An Introduction to Database System,17,1. 外码是否可以接受空值的问题,例1:在职工部门数据库中, EMP关系包含有外码Deptno 某元组的这一列若为空值,表示这个职工尚未分配到任何具体的部门工作 和应用环境的语义是相符,An Introduction to Database System,18,1. 外码是否可以接受空值的问题,例2:学生选课数据库 Student关系为被参照关系,其主码为Sno。 SC为参照关系,外码为Sno。 若SC的Sno为空值:表明尚不存在的某个学生,或者某个不知学号的学生,选修了某门课程,其成绩记录在Grade中, 与学校的应用环境是不相符的,因此SC的Sno列不能取空值。,An Introduction to Database System,19,2.在被参照关系中删除元组时的问题,出现违约操作的情形: 删除被参照关系的某个元组(student) 而参照关系有若干元组(SC)的外码值与被删除的被参照关系的主码值相同,An Introduction to Database System,20,2.在被参照关系中删除元组时的问题,违约反应:可有三种策略 级联删除(CASCADES) 受限删除(RESTRICTED) 置空值删除(NULLIFIES) 这三种处理方法,哪一种是正确的,要依应用环境的语义来定,An Introduction to Database System,21,2.在被参照关系中删除元组时的问题,级联删除 将参照关系中外码值与被参照关系中要删除元 组主码值相对应的元组一起删除 受限删除 当参照关系中没有任何元组的外码值与要删除 的被参照关系的元组的主码值相对应时,系统 才执行删除操作,否则拒绝此删除操作,An Introduction to Database System,22,2.在被参照关系中删除元组时的问题,置空值删除 删除被参照关系的元组,并将参照关系 中与被参照关系中被删除元组主码值相 等的外码值置为空值。,An Introduction to Database System,23,2.在被参照关系中删除元组时的问题,例3:要删除Student关系中Sno=950001的元组, 而SC关系中有4个元组的Sno都等于950001。 级联删除:将SC关系中所有4个Sno=950001的元组一起删除。如果参照关系同时又是另一个关系的被参照关系,则这种删除操作会继续级联下去 受限删除:系统将拒绝执行此删除操作。,An Introduction to Database System,24,2.在被参照关系中删除元组时的问题,置空值删除:将SC关系中所有Sno=950001的元组的Sno值置为空值。 在学生选课数据库中,显然第一种方法和第二种方法都是对的。第三种方法不符合应用环境语义。,An Introduction to Database System,25,3.在参照关系中插入元组时的问题,出现违约操作的情形 需要在参照关系中插入元组,而被参照关系不存在相应的元组 违约反应 受限插入 递归插入,An Introduction to Database System,26,3.在参照关系中插入元组时的问题,受限插入 仅当被参照关系中存在相应的元组,其主码值与参照关系插入元组的外码值相同时,系统才执行插入操作,否则拒绝此操作。 递归插入 首先向被参照关系中插入相应的元组,其主码值等于参照关系插入元组的外码值,然后向参照关系插入元组。,An Introduction to Database System,27,3.在参照关系中插入元组时的问题,例4:向SC关系插入(99001,1,90)元组,而Student关系中尚没有Sno=99001的学生 受限插入:系统将拒绝向SC关系插入(99001,1,90)元组 递归插入:系统将首先向Student关系插入Sno=99001的元组,然后向SC关系插入(99001,1,90)元组。,An Introduction to Database System,28,4. 修改主码的问题,两种策略 (1)不允许修改主码 (2)允许修改主码,An Introduction to Database System,29,允许修改主码策略,违约操作 要修改被参照关系中某些元组的主码值,而参照关系中有些元组的外码值正好等于被参照关系要修改的主码值 要修改参照关系中某些元组的主码值,而被参照关系中没有任何元组的外码值等于被参照关系修改后的主码值,An Introduction to Database System,30,允许修改主码策略,违约反应 (1) 修改的关系是被参照关系:与删除类似 级联修改 受限修改 置空值修改,An Introduction to Database System,31,允许修改主码策略,级联修改 修改被参照关系中主码值同时,用相同的方法修改参照关系中相应的外码值。 受限修改 拒绝此修改操作。只当参照关系中没有任何元组的外码值等于被参照关系中某个元组的主码值时,这个元组的主码值才能被修改。 置空值修改 修改被参照关系中主码值,同时将参照关系中相应的外码值置为空值。,An Introduction to Database System,32,允许修改主码策略,例5:将Student关系中Sno=950001的元组中Sno值改为960123。而SC关系中有 4个元组的Sno=950001 级联修改:将SC关系中4个Sno=950001元组中的Sno值也改为960123。如果参照关系同时又是另一个关系的被参照关系,则这种修改操作会继续级联下去。,An Introduction to Database System,33,允许修改主码策略,受限修改:只有SC中没有任何元组的Sno=950001时,才能修改Student表中Sno=950001的元组的Sno值改为960123。 置空值修改:将Student表中Sno=

注意事项

本文(课程名称数据库系统课件)为本站会员(我***)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.