- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章的数据库保护
6.2.5 两段封锁法(Two phase locking) 两段封锁协议规定所有事务都要遵守下列规则: 1.在对任何数据进行读写操作之前,事务首先要申请获得对该数据的封锁; 2.在释放一个封锁之后,事务不再申请和获得任何其他封锁。 6.3 数据库的完整性 数据库的完整性是指数据库中数据的正确性、有效性和相容性,防止不符合语义的错误数据进入数据库,造成无效操作和错误结果。 思考:数据库的完整性和安全性有何不同? 属性上的约束条件定义。Student表的sex只能取男或女。 CREATE table student(sno char(10) primary key, sname char(10) unique, sex char(10) check(sex in(男,女)), department char(30)) 元组上的约束条件检查和违约处理当学生的性别为女时,其名字不能以M开头 CREATE table student(sno char(10), sname char(10) not null, sex char(2), department char(30), primary key(sno), check(sex=女 and sname not like M%)) 同属性级限制相比,元组级的限制可以设置不同属性间的取值的取值的相互约束条件 CREATE table course(cno char(10) primary key, cname char(10)) 显式说明参照完整性的违约处理示例 CREATE table enroll(sno char(10), cno char(10), grade smallint, primary key(sno,cno), foreign key(sno) references student(sno) on delete cascade on update cascade, foreign key(cno) references course(cno) on delete no action on update cascade) 级联删除表enroll中相应的元组 级联更新表enroll中相应的元组 当删除course表中的元组造成与表enroll的不一致时拒绝删除 级联更新表enroll中相应的元组 6.3.1 完整性子系统 数据库完整性的责任是通过DBMS的完整性子系统实现的,完整性子系统有有两个功能: 1.监督事务的执行,并测试是否违反完整性规则。 2.如有违反现象,则采取恰当的操作,如拒绝、报告违反情况,改正错误等方法进行处理。 6.3.2 完整性规则 完整性规则主要由三部分组成: 1.规则的触发条件:规定系统使用规则来检查数据的时间; 2.约束条件或谓词:规定系统检查用户发出的操作请求违背了什么样的完整性约束条件; 3.“ELSE子句”,即违约响应:规定系统如果发现用户的操作请求违背了完整性约束条件,应该采取一定的动作来保证数据的完整性,也就是违反时要做的动作。 6.3.3 SQL中的完整性约束 1.主键约束:PRIMARY KEY指明主键 2.外键约束:用 FOREIGN KEY…REFERENCES…指明外键和参照关系,即参照完整性规则。 3.在属性之上的约束:非空值约束NOT NULL;CHECK子句 。 4.全局约束 : CHECK子句 ,断言ASSERTION。 全局约束之一: CHECK子句 设教学数据库中有3个关系:???? 学生关系S(SNO,SNAME,AGE,SEX)???? 学习关系SC(SNO,CNO,GRADE)???? 课程关系C(CNO,CNAME,TEACHER) 要求S中存储的学生信息满足下列条件:学生年龄在15-25岁之间。 那么,在关系S的定义中应加入一个检查子句: ?? CHE
文档评论(0)