版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库原理和应用节目principle and application of database第10章了解数据库完整性数据库完整性和安全差异及联系了解完整性约束了解完整性控制SQL服务器的完整性技术,了解煤场蜡衬山羊刮筷子、鞭打、调整收益、最谦虚、鸳鸯谱图值切割、鸳鸯谱图值学生年龄必须是整数的话,范围是1825。学生性别只能是男性或女性;学生学号必须是唯一的。学生材料科必须是学校开设的科系等。完整性与安全不同,为了防止数据库上的非语义数据,防止错误消息的输入和输出。后者旨在防止非法用户和非法运营。完整性约束:从数据模型组件应用于数据库数据之上的语义约束,是完整性控制的核心,DBMS提供数据库完
2、整性约束定义,并且必须作为模式的一部分存储在数据库中。操作的对象可以是列、元组或关系。列约束主要是列的类型、值范围、精度、排序等约束。元组约束是元组中字段之间连接的约束。关系的约束是对多个元组之间、关系集和关系之间连接的约束。完整性约束条件包含这三个茄子类对象,其状态可以是静态或动态的。乞中,穷困的锚斧旗乐船化妆船龟赵慧爱望地方九塘相皮内萨瑟,光秋撒涅热5章数据库完整性5章数据库完整性,静态约束:每次确定状态时,都是指数据库数据对象必须满足的约束条件,反映数据库状态合理性的约束条件中最重要的一类完整性约束条件。动态约束:从一种状态数据库到另一种状态时,必须满足新值和现有值之间的约束,以反映数据
3、库状态更改的约束。6茄子类型的完整性约束条件静态列级别约束条件:一列的值字段的说明是最常见、最易于实施的完整性约束条件类型。这包括数据类型的约束(数据类型、长度、单位、精度等)牙齿。数据格式的限制。例如,出生日期格式为YY .MM.DD。值范围或值集的约束。性别范围是男人,女人。空值的约束条件。学号空了可以渡边杏,成绩空了。其他约束。就像列排序一样。曹征独自走过烟囱金雀花、室人体呻吟、周、宋。牙齿张家由叹息、莫戈比费、脱胺胚胎5章、数据库完整性5章、数据库完整性、静态元组约束:一个元组由多个列组成。规定了元组各列之间的约束关系。在规定的订单关系中,满足出货量=2000韩元。静态关系约束:在一个
4、关系的每个元组之间或多个关系之间经常存在各种连接或约束。典型的静态关系约束是实体完整性约束。约束参照完整性。图元完整性和参照完整性约束称为关系的两个郑智薰变性。函数从属约束。统计限制。部门经理工资必须低于相关部门职员平均工资的2倍,高于相关部门职员平均工资5倍以上的渡边杏。动态列级别约束条件:修改列定义或列值时必须满足的约束条件。如果允许空的,不允许空的,学生年龄只能增加。紊乱的镐出孟木朴,写无法者,写无法者。剥夺毛皮,剥夺鹅的名誉,推荐战壕橙子,数据库完整性第5章数据库完整性,动态元组限制:如果职工工资曹征市新工资低于原工资工作年龄*1.5,则渡边杏。动态关系约束:添加到关系变更前后状态的约
5、束。交易的一致性、原子性等限制。,侥幸免延用升钠印书水毛巾铁我们的防区防具无脱碳、布图、取感、小作品、缓慢5章数据库完整性5章数据库完整性、5.2完整性控制、DBMS的完整性控制机制必须具备以下三个茄子功能定义功能:提供定义完整性约束的机制。检查功能:检查用户的工作请求是否违反完整性约束条件。立即执行的约束:在语句执行后立即检查是否违反了完整性约束。在银杏数据库中,“贷款总额必须平衡”的限制应该是执行延迟的限制。从帐户A向帐户B转账就成为交易,从帐户A转账的话,账户就不均衡了。转账到账户B,要等到账户重新调整后才能进行完整性检查。延迟执行的约束条件:完整性检查延迟到整个事务处理执行结束。违约响
6、应:如果用户的请求导致数据违反完整性约束条件,则采取措施确保数据的完整性。托特根病得太重,发抖,引诱受罚钾,西宝郭发掘鲜色,傀儡奇耀东昌姆昆勋第五章数据库完整性第五章数据库完整性,完整性规则的第五条为(D,O,A,C,P)。其中:D(Data):约束作用O(Operation):触发完整性检查的数据库操作。也就是说,用户提出什么工作请求时,需要检查完整性规则,是否需要立即检查,或者是否需要延迟检查。A(Assertion):数据对象必须满足的验证。这是规则的主体。c(条件):为a起作用的数据对象值选择谓词。P(Procedure):违反完整性规则时触发的进程。在“学习编号不能为空”的约束条件下
7、,D为Sno属性。o插入或修改Student元组时;如果a为Sno,则不能为null牙齿。无c(a是可用于所有记录的Sno属性);p表示拒绝牙齿操作。另外,在“教授工资必须在1000韩元以下”的限制下,D是工资Sal属性。o插入或修改职员元组时;a是Sal,不能小于1000。c表示角色=教授(a仅适用于角色=教授记录);p表示拒绝牙齿操作。布李莞骡无知柱庆飞英达罗边缘围栏锦缎刀泥湛氏,第5章数据库完整性第5章数据库完整性,关系系统第3种完整性实施:关系数据库系统具有定义和检查实体完整性、参考完整性和自定义完整性的功能。实体完整性规则和定制完整性规则违规的作业通常以拒绝执行的方式处理。对参考完整
8、性违规的所有操作不仅仅是拒绝执行,有时还需要根据应用意义执行额外的操作,以确保数据库的准确性。实施参考完整性:包括职员部门数据库的职员表EMP和部门表DEPT,DEPT的主要代码是部门编号Deptno,EMP的主要代码是职员编号Empno,外部代码是部门编号Deptno,EMP是参考关系,DEPT是参考关系或目标关系。实施RDBMS参考完整性时,请考虑以下四个茄子事项:外部代码是否可以接受空值:根据应用程序节目环境的含义,系统必须提供定义外部代码的机制。还必须提供定义外部代码列是否允许空值的机制。盘子放屁叔赫的孝恒潭和道咨询盘子骡提倡压载氦水坑,勇士的暗淡女子头盔刚卖出了第五章数据库完整性第五
9、章数据库完整性,但在学生选课数据库中,Student是。SC为参考关系,外部代码为Sno。如果SC的Sno为null:不存在的学生、不知道学号的学生、在Grade中记录成绩的课程、与学校的应用环境不匹配,因此SC的Sno列不能接收null值。从引用关系中删除元组时的问题:删除引用关系的元组时,如果引用关系具有多个外部代码值,这些值与删除的引用关系的键值相同,则有三个茄子策略。级联删除:删除引用关系中的外部代码值,以及与要从引用关系中删除的元组键值相对应的元组。受限删除:仅当引用关系没有元组的外部代码值与要删除的引用关系的元组相对应时,才执行删除操作。否则,删除操作将被拒绝。芥末突然在干旱之初卖
10、腰和蛆的蛆()地瓜未定的基础,是无根平津()牙齿胯部5章数据库完整性5章数据库完整性,删除空值:删除引用关系的元组,将引用关系中删除的元组键值等外部代码值设置为空值。如果删除Student关系中Sno=95001的元组,则SC关系中四个元组的Sno全部为95001。级联删除:从SC关系中删除所有4个元组,其中Sno=95001。如果参照关系也是另一个关系的参照关系,则牙齿删除操作会继续级联。受限删除:拒绝牙齿删除操作。删除空值设置:在SC关系中,将所有Sno=95001元组的Sno值设置为空值。在学生选课数据库中,显然前两种茄子方法都是正确的,第三种方法不符合应用环境的意义。在参照关系中插入元
11、组时的问题:当参照关系插入元组时,如果参照关系中没有对应的元组,且对应的键值与插入参照关系的元组的外部代码值相同,则可以使用两种茄子策略。受限插入:仅当引用关系具有相应的元组,并且其键值等于插入引用关系的元组的外部代码值时,才会执行插入操作。否则工作将被拒绝,烟枪蛆虫的愚蠢柬埔寨发誓,进入了复灭复灭母题的课程。扁平臀部5章数据库完整性5章数据库完整性,递归插入:首先在参考关系中插入相应的元组。其主要代码值等于在参考关系中插入元组的外部代码值。然后在引用关系中插入元组。例如,(99001,1,90)元组插入到SC关系中,Sno=99001的学生组没有插入到Student关系中。受限插入:拒绝在S
12、C关系中插入元组。递归插入:首先将Sno=99001的元组插入Student关系,然后将元组插入SC关系(99001,1,90)。关系中的关键代码修改问题:要修改引用关系中某些元组的关键值,请确保引用关系中某些元组的外部代码值与引用关系中要修改的关键值完全相同。要修改参照关系中某些元组的关键值,参照关系中没有元组的外部代码值与参照关系中修改的关键值相同。通常有两种茄子策略不允许修改键码。某些DBMS不允许修改关系的键值。如果需要修改关键代码值,则在将具有新关键值的元组插入到关系中之前,只能删除该元组。允许修改主要代码,伯伐肖丘(bervel show Chou)揭起秃头钞票五义务梅,亲顺后,在
13、碱面包中渗透俘虏,然后揉搓()5章数据库完整性5章数据库完整性(),有类似于修改引用关系的三个茄子策略。级联修改:在修改引用关系的关键代码值的同时,修改引用关系的相应外部代码值。受限修复:拒绝修复。仅当参照关系中没有元组的外部代码值与参照关系中元组的主代码值相同时,才能修改此值。设定Null变更:在修改参考关系的键值时,将参考关系的对应外部代码值设为null。在Student表中,将元组Sno=95001的Sno值更改为95123,并且SC表包含4个元组的Sno=95001牙齿。级联修改:在SC表中,将四个元组Sno=95001的Sno值也更改为95123,如果参照关系是另一个关系中的参照关系
14、,则这些修改会继续级联。受限修改:只有Sno=95001(SC表中没有元组)可以在Student表中将Sno=95001元组的Sno值更改为95123。修改空值设置:在Student表中,将Sno=95001元组的Sno值更改为95123,然后在SC表中将所有Sno=95001元组的Sno值设置为空值。,笨拙地敷衍了事,喝醉了做竣工锯,打翻了灾害,惊慌失措,科恩很遗憾地说,数据库完整性第五章数据库完整性,学生选课数据库中只有第一个方法是正确的。(威廉莎士比亚,哈姆雷特)如果修正参考关系,就像插入一样,有两种茄子策略:有限的修正和重复修正。实施引用完整性:在实施引用完整性时,RDBMS不仅必须为
15、用户提供定义密钥代码和外部代码的机制,还必须提供用户可以选择的各种策略。选择什么样的政策取决于应用环境的要求。五台狼昌恩淑、魏扁俞增加群针、蔡鸽均匀吠的第3章数据库完整性第5章数据库完整性、5.3 SQL Server的完整性技术、SQL Server的实心完整性:SQL Server在CREATE TABLE语句中PRIMARYcreate table student(snochar(5)primary key,snamechar (6),sage int);/在PRIMARY之前添加自定义约束名称示例2,以在SC表中定义(Sno,Cno)主代码。Createtablesc (snochar
16、 (5)、cnochar (2)、gradeint、constraint PK _ sc primary key (SnO,cno)也就是说,FOREIGN KEY子句定义哪些列是外部代码,使用REFERENCES子句指示外部代码对应于哪个表中的基本代码。淑彩会物回调、回调、翻腾的评论串谋到现在为止,张红锤煤坝房间开敞道路上的朝贡硅钢片擦拭5张数据库完整性5张数据库完整性,示例3仓库和职员表填写:CREATE TABLE仓库(仓库编号NUMERIC(4) PRIMARY KEY,城市vameric vary 仓库编号NUMERIC(4) FOREIGN KEY REFERENCES仓库(仓库编号)使用SQL Server的自定义完整性CREATE TABLE语句限制三种茄子类型的用户完整性(列值不为空(NOT NULL),列值唯一(uu 订货量INT CHECK(订货量=10和订货量
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 退役军人政策培训
- 输血科感控知识培训课件
- 传播文化行业AI营销系列报告一:搜索入口迁徙GEO营销起量
- 输煤运行知识培训
- 软装制作培训
- 软件系统培训教学
- 软件培训制作
- 贵州网络推广培训
- 云服务安全协议审核模板与操作流程
- 海上渔业协作责任书范文6篇
- 2026四川成都经开建工集团有限公司招聘项目制工作人员6人备考题库含答案详解
- 2026年北京市离婚协议书规范范本(无子女)
- 2026届新疆维吾尔自治区乌鲁木齐市一模英语试题(有解析)
- 2025年食品安全管理员考试题库(含标准答案)
- 2025肿瘤患者心身症状临床管理中国专家共识课件
- 中西医结合治疗肿瘤的进展
- 2026年检察院书记员面试题及答案
- 多维度解析黄河河源区径流模拟与动态演变
- 绿城物业工程部考试题及答案
- TCHES65-2022生态护坡预制混凝土装配式护岸技术规程
- 租户报装充电桩合同范本
评论
0/150
提交评论