- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 数据库保护 本章重要概念 (1)完整性的定义,完整性子系统的功能,完整性规则的组成。SQL中的三大类完整性约束,SQL3中的触发器技术。 (2)安全性的定义、级别,权限,SQL中的安全性机制,几种常用的安全性措施,自然环境的安全性。 本章重要概念 (3)事务的定义,COMMIT和ROLLBACK的语义,事务的ACID性质,事务的状态变迁图。 (4)恢复的定义、基本原则和实现方法,故障的类型,检查点技术,REDO和UNDO操作,运行记录优先原则。 (5)并发操作带来的三个问题,X锁、S锁、封锁协议 活锁和死锁,并发调度,串行调度,并发调度的可串行化,两段封锁法。 数据库保护 8.1 事务 8.2 数据库完整性 8.3 数据库安全性 8.4 数据库恢复技术 8.5 并发控制 本章小结 8.1.1 事务的定义 定义:事务(transaction)是构成单一逻辑工作单元的操作集合,一个事务由一组操作序列组成。 事务以BEGIN TRANSACTION语句标志事务开始执行,以COMMIT或ROLLBACE语句标志事务结束。 COMMIT是“事务提交”语句,表示事务的所有操作都完成了; ROLLBACK是“事务撤销” 语句,表示事务对数据库已作的所有更新全部撤销,把数据库恢复到该事务初始时的一致性状态。 8.1.2 事务的ACID性质 1、原子性(Atomicity):事务是一个不可分割的工作单元,其内部对数据库的所有操作要么全部执行,要么全部都不执行,不能只做一半。 保证原子性是数据库系统本身的职责,由DBMS的事务管理子系统完成。 2、一致性(Consistency) :即数据不会应事务的执行而遭受破坏,事务执行的结果不能破坏数据一致性,但可以使数据库从一种一致性状态上升到另一种一致性状态。 确保单个事务的一致性是编写事务的应用程序员的职责。在系统运行时,由DBMS的完整子系统执行测试任务。 8.1.2 事务的ACID性质 (3)隔离性(Isolation) :在多个事务并发执行时,系统应保证这些事务并发执行的结果与这些事务先后单独执行时的结果一样。 隔离性是由DBMS的并发控制子系统实现。 (4)持久性(Durability) :一个事务一旦完成全部操作后,它对数据库的所有更新应永久地反映在数据库中。 持久性是由DBMS的恢复管理子系统实现的。 例子:事务及其性质 相应的事务: T:read(A); A:=A–5000; write(A); read(B); B:=B + 5000; write(B). 原子性(A,B同时被修改或同时保持原值) 一致性(A+B的值不变) 隔离性 持久性 事务提交和事务撤销 事务的所有操作都完成了,则事务提交(COMMIT),否则事务撤销(ROLLBACK) BEGIN TRANSACTION标志事务开始执行 BEGIN TRANSACTION和COMMIT或ROLLBACK一起保证了事务的四个性质 对数据库访问的两个基本操作:读和写,但完成写操作后,数据可能暂时放在内存中,而非直接写进数据库。 8.2 数据库完整性 数据库的完整性是指数据的正确性和相容性,防止错误数据进入数据库,防止数据存在不符合语义的数据。 完整性子系统的主要功能 监督事务的执行,并测试是否违反完整性规则 若有违反现象,则采取恰当的操作,譬如拒绝操作、报告违反情况、改正错误等方法来处理 完整性规则 什么时候使用规则进行检查(称为规则的“触发条件”) 要检查什么样的错误(称为“约束条件”或“谓词”) 如果查出错误,应该怎么办(称为“ELSE子句”,即违反时要做的动作) SQL中的完整性约束---基本表约束 主键的定义 UNIQUE(〈列名序列〉)或 PRIMARY KEY(〈列名序列〉) 外键的定义 FOREIGN KEY(〈列名序列〉)REFERENCES 参照表 [(列名序列)][ ON DELETE 参照动作 ][ ON UPDATE 参照动作 ] 关于外键约束完整性的补充 删除被参照表中元组时的考虑 NO ACTION CASCADE方式 RESTRICT方式 SET NULL方式 SET DEFAULT方式 修改被参照表中主键值时的考虑 NO ACTION CASCADE方式 RESTRICT方式 SET NULL方式 SET DEFAULT方式 8.3 数据库安全性 数据库的安全性是防止非法用户使用数据库中的数据或防止合法用户越权使用数据库中的数据。 安全性级别 环境级:计算机系统的机房和设备应加以保护,防止有人进行物理破坏。 职员级:工作人员应清正廉洁,正确授
您可能关注的文档
最近下载
- 投标服务承诺书(20篇).docx VIP
- 七年级英语第一次月考卷(考试版A4)【测试范围:沪教版五四学制2024 Starter~Unit 1】(上海专用).docx VIP
- 李白按年龄顺序写的诗.docx VIP
- 2025年四川省高考化学试卷真题(含答案解析).docx
- 高频精选:京东快递员ai面试题及答案.doc VIP
- 高频精选:京东快递员ai面试题及答案大全.doc VIP
- 吉林省中药软片炮制规范.pptx VIP
- 名著阅读《湘行散记》七年级语文上册部编版(共9页).docx VIP
- 《白洋淀纪事》阅读测试题含答案(推荐).docx VIP
- 必考名著《白洋淀纪事》导读+知识点汇总.pdf VIP
文档评论(0)