第八章 数据库并发控制练习和答案教学内容
数据库原理及应用第八章课后习题答案
习题81、什么是数据库的安全性?数据库的安全性是指数据库的任何数据都不允许受到恶意的侵害或未经授权的存取或修改。
主要内涵包括三个方面:①保密性:不允许未经授权的用户存取数据。
②完整性:只允许被授权的用户修改数据。
③可用性:不应拒绝已授权的用户对数据进行存取。
2、什么是数据库的完整性?数据库的完整性是指数据库中数据的正确性和一致性。
数据库的完整性对数据库应用系统非常重要。
3、什么是数据库的完整性约束条件?为了保证数据库中的数据完整性,SQL Server设计了很多数据完整性约束:实体完整性、域完整性、参照完整性、用户定义完整性。
4、DBMS的完整性控制机制应具有哪些功能?1)数据库的完整性约束能够防止合法用户向数据库中添加不合语义的数据。
2)完整性控制机制易于理解,可以降低应用程序的复杂性,提高运行效率。
3)合理的数据完整性设计,能够兼顾数据库的完整性和系统的性能。
完善的数据库完整性,有助于尽早发现应用程序的错误。
5、DBMS在实现参照完整性时需要考虑哪些方面?强制参照完整性时,SQL Server将防止用户执行下列操作:1)在主表中没有关联的记录时,将记录添加或更改到相关表中。
2)更改主表中的值,导致相关表中生成孤立记录。
3)从主表中删除记录,但仍存在于该记录匹配的相关记录。
6、在关系系统中,当操作违反实体完整性、参照完整性和用户定义完整性约束条件时,一般是如何处理的?系统可以采用以下的策略加以处理:1)拒绝(NO ACTION)执行:不允许该操作执行,该策略一般为默认策略。
2)级联(CASCADE)操作:当删除或修改被参照表的一个元组造成了与参照表不一致,则删除或修改参照表中的所有造成不一致的元组。
3)设置为空值(SET-NULL):当删除或修改被参照表的一个元组造成了与参照表不一致,则将参照表中的所有造成不一致的元组的对应属性设置为空值。
7、数据库安全性和计算机系统的安全性有什么关系?计算机系统中,安全措施是一级一级层层设置。
第八章 数据库管理(部分)
三、SQL中的完整性约束
1. 域完整性规则:定义属性的取值范围―-属性值约束。 包括:域约束子句、非空值约束、基于属性的检查子句。
①用“CREATE DOMAIN”语句定义新的域,并可出现CHECK子句。
例:
定义一个新的域DEPT,可用下列语句实现:
DEPT CHAR(20) DEFAULT „计算机软件’
二、完整性规则的组成与分类
1、每个规则由三部分组成:
①什么时候使用规则进行检查(规则的“触发条件”);
②要检查什么样的错误( “ 约束条件”或“谓词”);
③若检查出错误,该怎样处理( “ELSE子句”,即违反时 要做的动作)。 2、在关系数据库中,完整性规则可分为三类: ①域完整性规则:定义属性的取值范围; ②基本表约束; ③断言。
CREATE DOMAIN
CONSTRAINT
VALID_DEPT
/*域约束名字*/
CHECK(VALUE IN („计算机科学与技术’,„计算机软件’)); 允许域约束上的CHECK子句中可以有任意复杂的条件表达式。
②非空值约束(NOT NULL) 例: SNO char(4) NOT NULL ③基于属性的检查子句(CHECK): 例:CHECK (GRADE IS NULL) OR (GRADE BRTWEEN 0 AND 100)
教学重点:
检查点技术
并发操作、封锁带来的若干问题,并发调度的可串行化。
SQL中完整性约束的实现:断言、触发器技术。 安全性中的授权语句。
§1
事务的概念
一、事务的定义 形成一个逻辑工作单元的数据库操作的汇集, 称为事务(transaction)。
例:在关系数据库中,一个事务可以是一条SQL语句、
数据库系统原理与设计(万常选版)整本书练习题和详细答案详解
数据库系统概论习题集第一章绪论一、选择题1. DBS是采用了数据库技术的计算机系统,DBS是一个集合体,包含数据库、计算机硬件、软件和()。
A. 系统分析员B. 程序员C. 数据库管理员D. 操作员2. 数据库(DB),数据库系统(DB S)和数据库管理系统(DBMS)之间的关系是()。
A. DBS包括D B和DBM SB. DBMS包括DB和DB SC. DB包括DB S和DBM SD. DBS就是D B,也就是DBM S3. 下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是()。
I.人工管理阶段II.文件系统阶段III.数据库阶段A. I 和IIB. 只有IIC. II 和IIID. 只有I4. 下列四项中,不属于数据库系统特点的是()。
A. 数据共享B. 数据完整性C. 数据冗余度高D. 数据独立性高5. 数据库系统的数据独立性体现在()。
A.不会因为数据的变化而影响到应用程序B.不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序C.不会因为存储策略的变化而影响存储结构D.不会因为某些存储结构的变化而影响其他的存储结构6. 描述数据库全体数据的全局逻辑结构和特性的是()。
A. 模式B. 内模式C. 外模式D. 用户模式7. 要保证数据库的数据独立性,需要修改的是()。
A. 模式与外模式B. 模式与内模式C. 三层之间的两种映射D. 三层模式8. 要保证数据库的逻辑数据独立性,需要修改的是()。
A. 模式与外模式的映射B. 模式与内模式之间的映射C. 模式D. 三层模式9. 用户或应用程序看到的那部分局部逻辑结构和特征的描述是(),它是模式的逻辑子集。
A.模式B. 物理模式C. 子模式D. 内模式10.下述()不是DBA数据库管理员的职责。
数据库武大版8章并发控制1ppt课件精品文档
T1
①读A=50 读B=100 求和=150
②
③读A=50 读B=200 求和=250 (验算不对)
T2
Xlock B 获得 读B=100 B←B*2 写回B=200 Commit Unlock B
不可重复读
2级封锁协议
1级封锁协议+事务T在读取数据R前必须先 加S锁,读完后即可释放S锁
2级封锁协议可以防止丢失修改和读“脏” 数据。
三、锁的相容矩阵
T1
X
S
-
T2
X
N
N
Y
S
N
Y
Y
-
Y
Y
Y
Y=Yes,相容的请求 N=No,不相容的请求
第八章 并发控制
8.1 并发控制概述 8.2 封锁 8.3 封锁协议 8.4 活锁和死锁 8.5 并发调度的可串行性 8.6 两段锁协议 8.7 封锁的粒度 8.8 Oracle的并发控制 8.9 小结
④
⑤
T2
Xlock A 等待 等待 等待 等待 获得Xlock A 读A=15 A←A-1 写回A=14 Commit Unlock A
没有丢失修改
1级封锁协议
T1
① Xlock A 获得
② 读A=16 A←A-1 写回A=15
③
④ Rollback Unlock A
T2
读A=15
读“脏”数据
1级封锁协议
数据库系统概论
第八章 并发控制 计算机科学与技术学院
第八章 并发控制
8.1 并发控制概述 8.2 封锁 8.3 封锁协议 8.4 活锁和死锁 8.5 并发调度的可串行性 8.6 两段锁协议 8.7 封锁的粒度 8.8 Oracle的并发控制 8.9 小结
数据库系统概论教案
数据库系统概论教案第一章:数据库基础知识1.1 数据库概念介绍数据库的定义、发展历程和分类解释数据、信息、知识与数据之间的关系1.2 数据模型介绍实体-联系模型、关系模型、层次模型和网状模型等解释数据模型的概念和作用1.3 数据库系统的结构介绍数据库系统的三级模式结构:外模式、模式和内模式解释数据库管理系统(DBMS)的概念和功能第二章:关系数据库理论2.1 关系模型介绍关系模型的基本概念:关系、属性、元组和域解释关系代数和元组关系演算的概念2.2 关系的完整性约束介绍实体完整性、参照完整性和用户定义完整性解释完整性约束的作用和意义2.3 数据库设计介绍需求分析、概念设计、逻辑设计和物理设计等阶段解释数据库设计的方法和步骤第三章:SQL语言3.1 SQL概述介绍SQL语言的概念、特点和应用范围解释SQL语言的基本语法和操作3.2 数据定义语言介绍创建表、修改表和删除表的SQL语句解释数据类型、主键、外键和索引的概念3.3 数据操纵语言介绍插入、删除、更新和查询数据的SQL语句解释聚合函数、分组和排序等概念第四章:数据库查询优化4.1 查询优化概述介绍查询优化的目的和重要性解释查询优化的方法和策略4.2 查询优化技术介绍基于规则的优化和基于成本的优化等方法解释查询优化中的代价估算和执行计划等概念4.3 索引和查询优化介绍索引的概念、分类和作用解释索引的创建、维护和优化策略第五章:事务管理5.1 事务概念介绍事务的定义、属性(ACID)和类型解释事务的作用和意义5.2 事务管理机制介绍并发控制和一致性维护的机制解释锁定、死锁和事务隔离级别等概念5.3 事务编程介绍使用编程语言实现事务的方法解释事务的提交、回滚和恢复等操作第六章:数据库安全与保护6.1 数据库安全概述介绍数据库安全的重要性解释数据库安全策略和威胁类型6.2 访问控制介绍自主访问控制(DAC)和强制访问控制(MAC)解释角色Based 访问控制(RBAC)和属性基访问控制(ABAC)6.3 加密技术介绍对称加密和非对称加密的概念解释哈希函数和数字签名在数据库安全中的应用第七章:数据库备份与恢复7.1 备份策略介绍完全备份、差异备份和增量备份等备份策略解释备份的频率和时间点选择7.2 恢复机制介绍恢复基点和恢复策略解释使用备份文件进行数据恢复的步骤和注意事项7.3 灾难恢复介绍灾难恢复计划和数据中心的地理位置选择解释镜像站点和负载均衡在灾难恢复中的应用第八章:数据库性能调优8.1 性能调优概述介绍性能调优的目标和重要性解释性能调优的方法和策略8.2 查询优化介绍查询优化的方法和工具解释如何使用查询分析器分析查询执行计划8.3 系统参数调优介绍数据库系统参数的概念和作用解释如何调整系统参数以提高数据库性能第九章:分布式数据库系统9.1 分布式数据库概念介绍分布式数据库的定义和特点解释分布式数据库系统的架构和组件9.2 数据分布策略介绍垂直分区和水平分区的概念解释数据本地化和数据复制在分布式数据库中的应用9.3 分布式查询处理介绍分布式查询处理的挑战和解决方案解释分布式查询优化和数据一致性维护的策略第十章:数据库新技术与发展趋势10.1 云计算与数据库介绍云计算的概念和数据库在云计算中的应用解释云数据库服务的特点和优势10.2 大数据与数据库介绍大数据的概念和数据库在大数据处理中的应用解释NoSQL数据库和NewSQL数据库的特点和优势10.3 与数据库介绍的概念和数据库在中的应用解释数据库智能化和自动化查询推荐的概念重点和难点解析重点环节一:关系模型的基本概念和关系代数、元组关系演算补充和说明:关系模型是数据库理论的核心,掌握关系模型的基本概念是理解数据库操作的基础。
(完整word版)数据库原理与应用教程 何玉洁 五——八章课后习题部分答案
第五章一、试说明使用视图的好处。
答:1、简化数据查询语句2、使用户能从多角度看待同一数据3、提高了数据的安全性4、提供了一定程度的逻辑独立性二、使用视图可以加快数据的查询速度,这句话对吗?为什么?答:不对。
因为数据库管理系统在对视图进行查询时,首先检查要查询的视图是否存在,如果存在,则从数据字典中提取视图的定义,把视图的定义语句对视图语句结合起来,转换成等价的对基本表的查询,然后再执行转换后的查询,所以使用视图不可以加快数据的查询速度。
三、利用第3章建立的Student、Course和SC表,写出创建满足下述要求的视图的SQL语句。
(1)查询学生的学号、姓名、所在系、课程号、课程名、课程学分。
答:CREATE VIEW IS_S_CASSELECT Sno,Sname,Sdept,Cno,Cname,CreditFROM Student S JOIN SC ON S.Sno=SC.SnoJOIN Course C ON o=o四、利用第三题建立的视图,完成如下查询:(1)查询考试成绩大于等于90分的学生的姓名、课程号和成绩。
答:SELECT Sname,Cno,GradeFROM IS_SCWHERE Grade>=90五、修改第三题(4)定义的视图,使其查询每个学生的学号,总学分以及总的选课门数。
答:ALTER VIEW IS_CCASSELECT Sno,COUNT(Credit),COUNT(Cno)FROM SC JOIN Course C ON o=oGROUP BY Sno第六章一、关系规范化中的操作异常有哪些?它是由什么引起的?解决的方法是什么?答:操作异常:数据冗余问题、数据更新问题、数据插入问题和数据删除问题。
它是由关系模式中某些属性之间存在的“不良”的函数依赖关系一起的。
解决的方法是进行模式分解,即把一个关系模式分解成两个或多个关系模式,在分解的过程中消除那些“不良”的函数依赖,从而获得良好的关系模式。
数据库系统概论 第七到八章 习题及答案
第七、八章习题一、选择题:1.下面哪个不是数据库系统必须提供的数据控制功能____。
A.安全性B.可移植性C.完整性D.并发控制答案:B2.保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏。
这是指数据的____。
A.安全性B.完整性C.并发控制D.恢复答案:A3.数据库的____是指数据的正确性和相容性。
A.安全性B.完整性C.并发控制D.恢复答案:B4.在数据系统中,对存取权限的定义称为____。
A.命令B.授权C.定义D.审计答案:B5.数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的____。
A.可靠性B.一致性C.完整性D.安全性答案:D6.授权编译系统和合法性检查机制一起组成了____子系统。
A.安全性B.完整性C.并发控制D.恢复答案:A7.____是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。
A.程序B.命令C.事务D.文件答案:C8.事务的原子性是指____。
A.事务中包括的所有操作要么都做,要么都不做B.事务一旦提交,对数据库的改变是永久的C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的D.事务必须是使数据库从一个一致性状态变到另一个一致性状态答案:A9.事务是数据库进行的基本工作单位。
如果一个事务执行成功,则全部更新提交;如果一个事务执行失败,则已做过的更新被恢复原状,好像整个事务从未有过这些更新,这样保持了数据库处于____状态。
A.安全性B.一致性C.完整性D.可靠性答案:B10.事务的一致性是指____。
A.事务中包括的所有操作要么都做,要么都不做B.事务一旦提交,对数据库的改变是永久的C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的D.事务必须是使数据库从一个一致性状态变到另一个一致性状态答案:D11.事务的隔离性是指____。
A.事务中包括的所有操作要么都做,要么都不做B.事务一旦提交,对数据库的改变是永久的C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的D.事务必须是使数据库从一个一致性状态变到另一个一致性状态答案:C12.事务的持续性是指____。
数据库系统概论王珊第5版第五版教材课后习题答案详解pdf
内容说明王珊《数据库系统概论》(第5版)是我国高校采用较多的权威教材之一,无论指定参考书是否为该教材,对该教材的课后习题加以练习和掌握,非常有助于考生的复习和备考。
本册以王珊《数据库系统概论》(第5版)为依据,对课后习题进行了详细的分析与解答,并对相关重要知识点进行了延伸和归纳。
明立考试(公众号)本文档的内容参考了部分网络资料及图书资料,是出于传递更多信息之目的,并不代表故意侵犯原作者或出版人的版权和利益,如果原作者或出版人对本文档有任何异议,请与作者联系,会在第一时间处理!内容说明 (1)声明 (2)目录 (3)第1章绪论 (5)课后习题 (5)参考答案 (6)第2章关系数据库 (12)课后习题 (12)参考答案 (14)第3章关系数据库标准语言SQL (18)课后习题 (18)参考答案 (19)第4章数据库安全性 (22)课后习题 (22)参考答案 (23)第5章数据库完整性 (26)课后习题 (26)参考答案 (27)第6章关系数据理论 (29)课后习题 (29)参考答案 (31)第7章数据库设计 (34)课后习题 (34)参考答案 (35)第8章数据库编程 (39)课后习题 (39)参考答案 (40)第9章关系查询处理和查询优化 (42)课后习题 (42)参考答案 (43)第10章数据库恢复技术 (46)课后习题 (46)参考答案 (48)第11章并发控制 (51)课后习题 (51)参考答案 (53)第12章数据库管理系统 (59)课后习题 (59)参考答案 (60)第13章数据库技术发展概述 (63)课后习题 (63)参考答案 (64)第14章大数据管理 (65)课后习题 (65)参考答案 (66)第15章内存数据库系统 (68)课后习题 (68)参考答案 (69)第16章数据仓库与联机分析处理技术 (71)课后习题 (71)参考答案 (72)第1章绪论课后习题1.试述数据、数据库、数据库管理系统、数据库系统的概念。
(完整word版)课后习题
第11章并发控制为保障事务的隔离性和一致性,DBMS需要对并发操作进行正确的调度。
可串行化调度:多个事务并发执行是正确的,当且仅当其结果与按某一次序串行地执行它们时的结果相同,称这种调度策略为可串行化的1.在数据库中为什么要并发控制?答:数据库是共享资源,通常有许多个事务同时在运行。
当多个事务并发地存取数据库时就会产生同时读取或修改同一数据的情况。
若对并发操作不加控制就可能会存取和存储不正确的数据,破坏数据库的一致性。
数据库管理系统必须提供并发控制机制。
2.并发操作会产生哪几类数据不一致?用什么方法能避免答:(1)并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读“脏’夕数据。
(2)避免方法和技术就是并发控制。
最常用技术是封锁技术。
或者时间戳和乐观控制法。
9 .设Tl ,几,几是如下的 3 个事务:Tl :A : = A + 2 ; T2:A : = A * 2 ; T3:A : = A **2 ; ( A <-A*A)设A 的初值为0 。
( l )若这3 个事务允许并行执行有多少可能的正确结果,请一一列举出来。
答:A 的最终结果可能有2 、4 、8 、16 。
因为串行执行次序有Tl T2T3、Tl T3T2、T2T1T3、T2T3Tl 、T3T1T2、T3T2 Tl 。
对应的执行结果是16 、8 ·4 ·2 ·4 ·2 。
( 2 )请给出一个可串行化的调度,并给出执行结果最后结果A 为16 ,是可串行化的调度。
( 3 )请给出一个非串行化的调度,并给出执行结果。
答:最后结果A 为0 ,为非串行化的调度。
( 4 )若这3 个事务都遵守两段锁协议,请给出一个不产生死锁的可串行化调度。
( 5 )若这3 个事务都遵守两段锁协议,请给出一个产生死锁的调度。
第10章数据库恢复技术1.试述事务的概念及事务的4 个特性。
答:事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。
第八章 数据库并发控制练习和答案
第八章数据库并发控制一、选择题1.为了防止一个用户得工作不适当地影响另一个用户,应该采取( )。
A、完整性控制B、访问控制C、安全性控制D、并发控制2、解决并发操作带来得数据不一致问题普遍采用()技术。
A、封锁B、存取控制C、恢复D、协商3.下列不属于并发操作带来得问题就是( )。
A、丢失修改B、不可重复读C、死锁D、脏读4.DBMS普遍采用( )方法来保证调度得正确性。
A、索引B、授权C、封锁D、日志5.事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放,这就是()。
A、一级封锁协议B、二级封锁协议C、三级封锁协议D、零级封锁协议6.如果事务T获得了数据项Q上得排她锁,则T对Q( )。
A、只能读不能写B、只能写不能读C、既可读又可写D、不能读也不能写7。
设事务T1与T2,对数据库中地数据A进行操作,可能有如下几种情况,请问哪一种不会发生冲突操作() .A、T1正在写A,T2要读AB、T1正在写A,T2也要写AC、T1正在读A,T2要写AD、T1正在读A,T2也要读A8。
如果有两个事务,同时对数据库中同一数据进行操作,不会引起冲突得操作就是() .A、一个就是DELETE,一个就是SELECTB、一个就是SELECT,一个就是DELETEC、两个都就是UPDATED、两个都就是SELECT9.在数据库系统中,死锁属于()。
A、系统故障B、事务故障C、介质故障D、程序故障二、简答题1、在数据库中为什么要并发控制?答:数据库就是共享资源,通常有许多个事务同时在运行。
当多个事务并发地存取数据库时就会产生同时读取与/或修改同一数据得情况.若对并发操作不加控制就可能会存取与存储不正确得数据,破坏数据库得一致性。
所以数据库管理系统必须提供并发控制机制。
2、并发操作可能会产生哪几类数据不一致?用什么方法能避免各种不一致得情况?答: 并发操作带来得数据不一致性包括三类:丢失修改、不可重复读与读“脏”数据.(1)丢失修改(LostUpdate)两个事务T1与T2读入同一数据并修改,T2提交得结果破坏了(覆盖了)T1提交得结果,导致T1得修改被丢失。
数据库系统概论之并发控制
数据库系统概论之并发控制并发控制是数据库系统中一个重要的概念,它指的是同时运行的多个事务之间对共享资源的访问和操作的控制。
在数据库系统中,多个用户可能同时对数据库进行读操作或者写操作,为了保证数据的一致性和完整性,必须要对并发操作进行控制。
并发控制的目标是确保多个事务的执行在数据库系统中能够正确、有序地进行,而不会出现冲突、混乱等问题。
在实现并发控制的过程中,需要解决的主要问题有以下几个方面:1.数据库锁定机制:锁是最常用的控制并发的工具之一、通过对数据进行加锁,可以控制事务对数据的访问,保证了数据的一致性。
常见的锁有共享锁和排他锁,共享锁允许多个事务读取同一份数据,而排他锁只允许一个事务对数据进行修改。
通过合理的使用锁,可以提高并发处理的效率和性能。
2.事务隔离级别:事务隔离级别定义了多个事务之间的隔离程度,即一个事务对数据库所做的修改对其他事务是否可见。
常见的事务隔离级别有READUNCOMMITTED、READCOMMITTED、REPEATABLEREAD和SERIALIZABLE。
不同的隔离级别对并发控制的实现方式和性能有不同的影响。
3.死锁处理:死锁指的是多个事务互相等待对方释放资源,导致无法继续进行下去的情况。
数据库系统需要检测和处理死锁,以保证系统的正常运行。
常见的死锁处理方法有超时、死锁检测和死锁恢复等。
除了以上三个方面,还有其他一些并发控制的技术和策略可以提高系统的并发处理能力,例如多版本并发控制(MVCC)、时间戳、快照隔离等。
这些技术和策略可以根据不同的应用场景和需求来选择和应用。
在实际应用中,合理设计和使用并发控制机制可以提高数据库系统的性能和并发处理能力。
但是,过度的并发控制也可能导致系统性能下降。
因此,在设计数据库系统时,需要综合考虑并发控制的复杂性、性能和系统需求,做出合理的选择和权衡。
总之,并发控制是数据库系统中一个重要的概念,通过对多个事务的并发执行进行控制,保证了数据的一致性和完整性。
《数据库原理与应用》课程教学大纲
《数据库原理与应用》课程教学大纲一、课程基本信息(一)课程代码:(二)课程中文名称:数据库原理与应用(三)课程英文名称:Principle and Application of Database(四)课程性质:专业基础课程(五)适用专业:计算机科学与技术、软件工程、大数据与人工智能(六)开课单位:(七)教学时间安排:第 3学期(八)先修课程:计算机基础、高级语言程序设计(九)后续课程:网络程序开发、大数据技术原理及应用(十)学时、学分:32学时、2学分二、课程目标《数据库原理与应用》是计算机类各专业的必修课,是一门重要的专业基础课。
原理部分以数据库技术的实际应用为目标,重点讲述数据库的基础知识、基本原理和基本技术;应用部分以数据库应用开发为主,介绍数据库应用系统的设计方法、步骤和范例。
通过本课程学习,使学生在掌握数据库系统基本概念、原理的基础上,能熟练使用SQL语言在某一个具体的数据库管理系统上进行应用操作;掌握数据库原理、方法及步骤,具有数据库设计以及应用数据库管理系统的基本能力。
达成支撑专业学习成果相应的指标点。
课程目标对学生能力要求如下:课程目标1. 逐步掌握科学的学习方法,阅读并理解数据库相关教材、参考书和科技文献,不断地扩展知识面,增强独立思考的能力,更新知识结构。
课程目标2. 掌握关系代数语言的使用;能够熟练使用SQL语句进行数据操纵和数据定义。
课程目标3. 了解关系模型的基本概念;掌握关系数据库规范化理论,能够利用分解算法将关系模式进行合理的分解;掌握数据库设计方法和数据库系统维护的相关概念和应用。
课程目标4. 能够在MySQL平台环境和开发工具下使用SQL语句进行数据操纵和数据定义。
课程目标5. 具备良好的沟通、表达和团队协作能力。
三、教学内容与课程目标的关系第1章数据库系统的基本原理1.章节学时:1学时2.教学内容:(1)数据库系统概述(数据库系统概念;数据管理技术的产生和发展;数据库系统组成)。
并发控制练习题
数据库系统工程师
11
12
条评价是正确的。
A.该操作不能重复读
B.该操作丢失修改
C.该操作符合完整性要求
D.该操作的t1步中,事务T1
应申请X锁
E.该操作的t2步中,事务T2
8
选择题
11.解决并发操作带来的数据不一致问题时普遍采用 _____。
A.封锁 B.恢复 C.存取控制 D.协商 12.若事务T对数据R已加X锁,则其他事务对数据
选择题
1.若事务T对数据对象A加上X锁,则________。 A.只允许T修改A,其它任何事务都不能再对A加任
何类型的锁。 B.只允许T读取A,其它任何事务都不能再对A加任
何类型的锁。 C.只允许T读取和修改A,其它任何事务都不能再对
A加任何类型的锁。 D.只允许T修改A,其它任何事务都不能再对A加X
R_____、 A.可以加S锁不能加X锁 B.不能加S锁可以加X锁 C.可以加S锁也可以加X锁 D.不能加任何锁 答案:11.A 12.D
9
选择题
13.并发操作会带来哪些数据不一致_____。 A.丢失修改、不可重复读、脏读、死锁 B.不可重复读、脏读、死锁 C.丢失修改、脏读、死锁 D.丢失修改、不可重复读、脏读 答案:D
锁。 答案:C
1
选择题
2.若事务T对数据对象A加上S锁,则________。 A.事务T可以读A和修改A,其它事务只能再对A加S
锁,而不能加X 锁。 B.事务T可以读A但不能修改A,其它事务能对A加S
锁和X锁。 C.事务T可以读A但不能修改A,其它事务只能再对
A加S锁,而不能加X 锁。 D.事务T可以读A和修改A,其它事务能对A加S锁和
6
选择题
《数据库并发控制》课件
• 数据库并发控制概述 • 数据库锁机制 • 数据库事务隔离级别 • 多版本并发控制 • 数据库并发控制的优化 • 数据库并发控制的案例分析
01
数据库并发控制概述
并发控制的定义
并发控制
在数据库系统中,并发控制用于协调多个事务的 执行,确保数据的一致性和完整性。
一致性
索引优化的方法
选择合适的索引类型、合理规划索引列、定期维护和重建索引等。
SQL语句优化
总结词
优化SQL语句可以提高数据库查询性能,减少并发控制时的 资源争用。
详细描述
通过编写高效的SQL语句,可以减少数据库的负载,降低并发控 制时的竞争。常见的SQL语句优化技巧包括使用连接代替子查询
、减少全表扫描等。
SQL语句优化的方法
分析查询执行计划、使用数据库提供的性能监控工具、编 写简洁高效的SQL语句等。
数据库设计优化
总结词
良好的数据库设计可以提高数据存储和访问的效率,降低 并发控制时的冲突。
详细描述
数据库设计包括表结构设计、关系设计、存储过程和触发 器设计等。通过合理设计,可以减少数据冗余、提高数据 一致性,从而降低并发控制时的竞争。
02
数据库锁机制
锁的分类
共享锁(Shared Lock)
允许事务读取一个资源,阻止其他事务获取独占锁。
排他锁(Exclusive Lock)
允许事务修改或删除一个资源,阻止其他事务获取共享锁或排他锁。
更新锁(Update Lock)
用于防止死锁,允许事务在资源上获得排他锁之前先获得一个较弱的 锁。
案例二:电商系统并发控制优化
总结词
利用乐观锁和事务隔离级别
并发掌握 课后答案
更新后的值,再按此新的 A 值进行运算。这样就 不会丢失 T1 的更新。
DBMS 按照一定的封锁协议,对并发操作进行控制,使得多个并发操作有序地执行,就可 以避免丢失修改、不可重复读和读"脏"数据等数据不一致性。
6.什么是封锁协议?不同级别的封锁协议的主要区别是什么? 答:在运用封锁技术对数据加锁时,要约定一些规则。例如,在运用 X 锁和 S 锁对数据
答:并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读"脏"数据。 (1)丢失修改(Lost Update)两个事务 T1 和 T2 读入同一数据并修改,T2 提交的结果破 坏了(覆盖了)T1 提交的结果,导致 T1 的修改被丢失。 (2)不可重复读(Non -Repeatable Read)不可重复读是指事务 T1 读取数据后,事务 T2 执行更新操作,使 T1 无法再现前一次读取结果。不可重复读包括三种情况:详见《概论》 8.1(P266)。 (3)读"脏"数据(Dirty Read)读"脏"数据是指事务 T1 修改某一数据,并将其写回磁盘, 事务 T2 读取同一数据后,T1 由于某种原因被撤销,这时 T1 已修改过的数据恢复原值,T2 读 到的数据就与数据库中的数据不一致,则 T2 读到的数据就为"脏"数据,即不正确的数据。 避免不一致性的方法和技术就是并发控制。最常用的技术是封锁技术。也可以用其他 技术,例如在分布式数据库系统中可以采用时间戳方法来进行并发控制。 3. 3. 什么是封锁? 答:封锁就是事务 T 在对某个数据对象例如表、记录等操作之前,先向系统发出请求, 对其加锁。加锁后事务 T 就对该数据对象有了一定的控制,在事务 T 释放它的锁之前,其他 的事务不能更新此数据对象。封锁是实现并发控制的一个非常重要的技术。 4. 4. 基本的封锁类型有几种?试述它们的含义。 答:基本的封锁类型有两种:排它锁(Exclusive Locks, 简称 X 锁 )和共享锁(Share Locks,简称 S 锁)。 排它锁又称为写锁。若事务 T 对数据对象 A 加上 X 锁,则只允许 T 读取和修改 A,其他 任何事务都不能再对 A 加任何类型的锁,直到 T 释放 A 上的锁。这就保证了其他事务在 T 释 放 A 上的锁之前不能再读取和修改 A。 共享锁又称为读锁。若事务 T 对数据对象 A 加上 S 锁,则事务 T 可以读 A 但不能修改 A,其 他事务只能再对 A 加 S 锁,而不能加 X 锁,直到 T 释放 A 上的 S 锁。这就保证了其他事务可 以读 A,但在 T 释放 A 上的 S 锁之前不能对 A 做任何修改。 5.如何用封锁机制保证数据的一致性 ? 答:DBMS 在对数据进行读、写操作之前首先对该数据执行封锁操作,例如下图中事务 T1 在对 A 进行修改之前先对 A 执行 XLock(A),即对 A 加 X 锁。这样,当 T2 请求对 A 加 X 锁 时就被拒绝,T2 只能等待 T1 释放 A 上的锁后才能获得对 A 的 X 锁,这时它读到的 A 是 T1
数据库原理及应用(第2版)--课后习题参考答案
·5·
2.实体-联系模型主要包含______、______和______三部分内容。实体 属性 联系 3. 如果实体 A 与实体 B 是一对多联系, 则实体 B 中的一个实例最多可对应实体 A 中的______实例。 一个 4.数据完整性约束包括______完整性、______完整性和______完整性。 实体 参照 用户定义 5.关系数据模型的组织形式是______。 二维表 6.数据库系统的______和______之间的映像,提供了数据的物理独立性。 7.数据的逻辑独立性是指当______变化时可以保持______不变。 内模式 模式 8.数据模型三要素包括______、______和______。 数据结构 数据操作 数据完整性约束 9.实体联系模型属于______层数据模型,它与具体的 DBMS______。概念 无关 10.关系操作的特点是基于______的操作。 集合 11.当数据的物理存储位置发生变化时,通过调整______映像,可以保证______不变化,从而保证 数据的物理独立性。 模式/内模式 模式 12.参照完整性约束是通过______保证的。 外码
客户服务器结构返回给客户端的是处理后的结果数据文件服务器结构返回给客含客户所需数据的文件感谢您的阅读祝您生活愉快
·1·
第 1 章 数据概述
一.选择题 1.下列关于数据库管理系统的说法,错误的是 C A.数据库管理系统与操作系统有关,操作系统的类型决定了能够运行的数据库管理系统的类型 B.数据库管理系统对数据库文件的访问必须经过操作系统实现才能实现 C.数据库应用程序可以不经过数据库管理系统而直接读取数据库文件 D.数据库管理系统对用户隐藏了数据库文件的存放位置和文件名 2.下列关于用文件管理数据的说法,错误的是 D A.用文件管理数据,难以提供应用程序对数据的独立性 B.当存储数据的文件名发生变化时,必须修改访问数据文件的应用程序 C.用文件存储数据的方式难以实现数据访问的安全控制 D.将相关的数据存储在一个文件中,有利于用户对数据进行分类,因此也可以加快用户操作数 据的效率 3.下列说法中,不属于数据库管理系统特征的是 C A.提供了应用程序和数据的独立性 B.所有的数据作为一个整体考虑,因此是相互关联的数据的集合 C.用户访问数据时,需要知道存储数据的文件的物理信息 D.能够保证数据库数据的可靠性,即使在存储数据的硬盘出现故障时,也能防止数据丢失 5.在数据库系统中,数据库管理系统和操作系统之间的关系是 A.相互调用 B.数据库管理系统调用操作系统 C.操作系统调用数据库管理系统 D.并发运行 6.数据库系统的物理独立性是指 D A.不会因为数据的变化而影响应用程序 B.不会因为数据存储结构的变化而影响应用程序 C.不会因为数据存储策略的变化而影响数据的存储结构 D.不会因为数据逻辑结构的变化而影响应用程序 7.数据库管理系统是数据库系统的核心,它负责有效地组织、存储和管理数据,它位于用户和操作 系统之间,属于 A A.系统软件 B.工具软件 C.应用软件 D.数据软件 8.数据库系统是由若干部分组成的。下列不属于数据库系统组成部分的是 A.数据库 B.操作系统 C.应用程序 D.数据库管理系统 B D
数据库原理与应用教程(尹志宇著)课后习题答案下载
数据库原理与应用教程(尹志宇著)课后习题答案下载尹志宇的著作《数据库原理与应用教程》是xx年清华大学出版社出版的图书,作者是尹志宇。
今天要与大家分享的是数据库原理与应用教程(尹志宇著),希望对大家有帮助!点击此处下载数据库原理与应用教程(尹志宇著)课后习题《数据库原理与应用教程:SQLServer》全面讲述数据库的基本原理和SQLServerxx的应用,全书以理论够用、实用,以实践为重点的原则,使读者能够快速、轻松地掌握SQLServer数据库技术与应用。
数据库原理与应用教程中第1~5章讲述数据库的基本理论知识,其内容包括数据库系统概述、数据模型、关系数据库、关系规范化基础、数据库设计。
第6~14章讲述数据库管理系统SQLSetverxx的应用,其内容包括SQLSetverxx数据库基础,Transact-SQL语言基础,数据库和表,数据库查询,索引和视图,存储过程、触发器和游标,事务与并发控制,数据库的备份与还原,数据库的安全管理;第15章利用一个实例介绍基于C#.NET的SQLServer数据库系统开发过程。
为便于学习,每章还配有丰富的习题。
《数据库原理与应用教程:SQLServer》可作为大学本科生“SQLServer数据库”课程的教学用书,也可以作为培养数据库系统工程师的培训教材,还可以作为数据库管理人员及数据库应用系统开发人员的参考用书。
第1章数据库系统概述第2章数据模型第3章关系数据库第4章关系规范化基础第5章数据库设计第6章SQLServerxx基础第7章Transact-SQL语言基础第8章数据库和表第9章数据库查询第10章视图和索引第11章存储过程、触发器和游标第12章事务与并发控制第13章数据库的备份与还原第14章数据库的安全管理第15章基于C#、NET的数据库系统开发参考文献1.数据库原理及应用教程试题及答案2.数据库答案-阳光大学生网3.数据库原理与实践教程模拟试题及参考答案4.数据库原理及应用教程试题及答案。
数据库原理与应用系列第八章习题(含答案)
第八章习题(答案)班级:学号: 姓名:1.填空题(1)SQL Server 有两种安全认证模式,即___WINDOWS_______________安全认证模式和______混合______安全认证模式。
(2)SQL SERVER安装好以后,只有2个已经创建的用户:___SA_______和BULTIN/administrators,它们都是超级用户,对数据库拥有一切权限。
(3)数据库的完整性是指数据的___正确性___和___相容性____。
(4)按数据库状态,数据转储分为动态转储和静态转储。
(5)按数据转储方式,数据转储分为海量转储和增量转储。
2.单选题(1)日志文件用于记录( D )。
A、程序运行过程B、数据操作C、程序运行结果D、对数据的更新操作(2)SQL的COMMIT语句的主要作用是( C )。
A、终止程序B、中断程序C、事务提交D、事务回退(3)SQL的ROLLBACK语句的主要作用是( D )。
A、终止程序B、中断程序C、事务提交D、事务回退(4)在数据库系统中,对存取权限的定义称为(B)。
A、命令B、授权C、定义D、审计(5)设有两个事务T1,T2,其并发操作如下表所示,下面评价正确的是(C )。
A、该操作不存在问题B、该操作丢失修改C、该操作不能重复读D、该操作读“脏”数据(6)设有两个事务T1,T2,其并发操作如下表所示,下面评价正确的是(B )。
A、该操作不存在问题B、该操作丢失修改C、该操作不能重复读D、该操作读“脏”数据(7)A、该操作不存在问题B、该操作丢失修改C、该操作不能重复读D、该操作读“脏”数据(8)若事务T对数据对象A加上S锁,则( C )A、事务T可以读A和修改A,其他事务只能再对A加S锁,而不能加X锁B、事务T可以读A但不能修改A,其他事务能对A加S锁和X锁C、事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁D、事务T可以读A和修改A,其他事务能对A加S锁和X锁(9)若事务T对数据对象A加上X锁,则( C )A、事务T可以读A和修改A,其他事务不能对A加X锁B、事务T可以修改A,其他事务不能对A加X锁C、事务T可以读A和修改A,其他事务都不能再对A加任何类型的锁D、事务T修改A,其他事务都不能再对A加任何类型的锁(10)数据库中的封锁机制是( C )的主要方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第八章数据库并发控制一、选择题1.为了防止一个用户的工作不适当地影响另一个用户,应该采取()。
A. 完整性控制B. 访问控制C. 安全性控制D. 并发控制2. 解决并发操作带来的数据不一致问题普遍采用()技术。
A. 封锁B. 存取控制C. 恢复D. 协商3.下列不属于并发操作带来的问题是()。
A. 丢失修改B. 不可重复读C. 死锁D. 脏读4.DBMS普遍采用()方法来保证调度的正确性。
A. 索引B. 授权C. 封锁D. 日志5.事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放,这是()。
A. 一级封锁协议B. 二级封锁协议C. 三级封锁协议D. 零级封锁协议6.如果事务T获得了数据项Q上的排他锁,则T对Q()。
A. 只能读不能写B. 只能写不能读C. 既可读又可写D. 不能读也不能写7.设事务T1和T2,对数据库中地数据A进行操作,可能有如下几种情况,请问哪一种不会发生冲突操作()。
A. T1正在写A,T2要读AB. T1正在写A,T2也要写AC. T1正在读A,T2要写AD. T1正在读A,T2也要读A8.如果有两个事务,同时对数据库中同一数据进行操作,不会引起冲突的操作是()。
A. 一个是DELETE,一个是SELECTB. 一个是SELECT,一个是DELETEC. 两个都是UPDATED. 两个都是SELECT9.在数据库系统中,死锁属于()。
A. 系统故障B. 事务故障C. 介质故障D. 程序故障二、简答题1. 在数据库中为什么要并发控制?答:数据库是共享资源,通常有许多个事务同时在运行。
当多个事务并发地存取数据库时就会产生同时读取和/或修改同一数据的情况。
若对并发操作不加控制就可能会存取和存储不正确的数据,破坏数据库的一致性。
所以数据库管理系统必须提供并发控制机制。
2. 并发操作可能会产生哪几类数据不一致?用什么方法能避免各种不一致的情况?答:并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读“脏”数据。
(1)丢失修改(Lost Update)两个事务T1和T2读入同一数据并修改,T2提交的结果破坏了(覆盖了)T1提交的结果,导致T1的修改被丢失。
(2)不可重复读(Non-Repeatable Read)不可重复读是指事务T1读取数据后,事务T2执行更新操作,使T1无法再现前一次读取结果。
(3)读“脏”数据(Dirty Read)读“脏”数据是指事务T1修改某一数据,并将其写回磁盘,事务T2读取同一数据后,T1由于某种原因被撤销,这时T1已修改过的数据恢复原值,T2读到的数据就与数据库中的数据不一致,则T2读到的数据就为“脏”数据,即不正确的数据。
避免不一致性的方法和技术就是并发控制。
最常用的并发控制技术是封锁技术。
也可以用其他技术,例如在分布式数据库系统中可以采用时间戳方法来进行并发控制。
3. 什么是封锁?答:封锁就是事务T在对某个数据对象例如表、记录等操作之前,先向系统发出请求,对其加锁。
加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其他的事务不能更新此数据对象。
封锁是实现并发控制的一个非常重要的技术。
4. 基本的封锁类型有几种?试述它们的含义。
答:基本的封锁类型有两种: 排它锁(Exclusive Locks,简称X锁) 和共享锁(Share Locks,简称S锁)。
排它锁又称为写锁。
若事务T对数据对象A加上X锁,则只允许T读取和修改A,其他任何事务都不能再对A加任何类型的锁,直到T释放A上的锁。
这就保证了其他事务在T释放A上的锁之前不能再读取和修改A。
共享锁又称为读锁。
若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁。
这就保证了其他事务可以读A,但在T释放A上的S锁之前不能对A做任何修改。
5. 什么是封锁协议?不同级别的封锁协议的主要区别是什么?答:在运用封锁技术对数据加锁时,要约定一些规则。
例如,在运用X锁和S锁对数据对象加锁时,要约定何时申请X锁或S锁、何时释放封锁等。
这些约定或者规则称为封锁协议(Locking Protocol)。
对封锁方式约定不同的规则,就形成了各种不同的封锁协议。
不同级别的封锁协议,例如《概论》中介绍的三级封锁协议,三级协议的主要区别在于什么操作需要申请封锁,何时申请封锁以及何时释放锁(即持锁时间的长短)。
一级封锁协议:事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放。
二级封锁协议:一级封锁协议加上事务T在读取数据R之前必须先对其加S锁,读完后即可释放S锁。
三级封锁协议:一级封锁协议加上事务T在读取数据R之前必须先对其加S锁,直到事务结束才释放。
6. 不同封锁协议与系统一致性级别的关系是什么?答:不同的封锁协议对应不同的一致性级别。
一级封锁协议可防止丢失修改,并保证事务T是可恢复的。
在一级封锁协议中,对读数据是不加S锁的,所以它不能保证可重复读和不读“脏”数据。
二级封锁协议除防止了丢失修改,还可进一步防止读“脏”数据。
在二级封锁协议中,由于读完数据后立即释放S锁,所以它不能保证可重复读。
在三级封锁协议中,无论是读数据还是写数据都加长锁,即都要到事务结束时才释放封锁。
所以三级封锁协议除防止了丢失修改和不读“脏”数据外,还进一步防止了不可重复读。
7. 试述活锁的产生原因和解决方法。
答:活锁产生的原因:当一系列封锁不能按照其先后顺序执行时,就可能导致一些事务无限期等待某个封锁,从而导致活锁。
避免活锁的简单方法是采用先来先服务的策略。
当多个事务请求封锁同一数据对象时,封锁子系统按请求封锁的先后次序对事务排队,数据对象上的锁一旦释放就批准申请队列中第一个事务获得锁。
8. 请给出预防死锁的若干方法。
答:在数据库中,产生死锁的原因是两个或多个事务都已封锁了一些数据对象,然后又都请求已被其他事务封锁的数据加锁,从而出现死等待。
防止死锁的发生其实就是要破坏产生死锁的条件。
预防死锁通常有两种方法:(1)一次封锁法要求每个事务必须一次将所有要使用的数据全部加锁,否则就不能继续执行。
(2)顺序封锁法预先对数据对象规定一个封锁顺序,所有事务都按这个顺序实行封锁。
不过,预防死锁的策略不大适合数据库系统的特点。
9. 请给出检测死锁发生的一种方法,当发生死锁后如何解除死锁?答:数据库系统一般采用允许死锁发生,DBMS检测到死锁后加以解除的方法。
DBMS中诊断死锁的方法与操作系统类似,一般使用超时法或事务等待图法。
超时法是:如果一个事务的等待时间超过了规定的时限,就认为发生了死锁。
超时法实现简单,但有可能误判死锁,事务因其他原因长时间等待超过时限时,系统会误认为发生了死锁。
若时限设置得太长,又不能及时发现死锁发生。
DBMS并发控制子系统检测到死锁后,就要设法解除。
通常采用的方法是选择一个处理死锁代价最小的事务,将其撤消,释放此事务持有的所有锁,使其他事务得以继续运行下去。
当然,对撤销的事务所执行的数据修改操作必须加以恢复。
10. 什么样的并发调度是正确的调度?答:可串行化(Serializable)的调度是正确的调度。
可串行化的调度的定义:多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行它们时的结果相同,我们称这种调度策略为可串行化的调度。
11. 试述两段锁协议的概念。
答:两段锁协议是指所有事务必须分两个阶段对数据项加锁和解锁。
·在对任何数据进行读、写操作之前,首先要申请并获得对该数据的封锁;·在释放一个封锁之后,事务不再申请和获得任何其他封锁。
“两段”的含义是,事务分为两个阶段:第一阶段是获得封锁,也称为扩展阶段。
在这阶段,事务可以申请获得任何数据项上的任何类型的锁,但是不能释放任何锁。
第二阶段是释放封锁,也称为收缩阶段。
在这阶段,事务释放已经获得的锁,但是不能再申请任何锁。
12. 为什么要引进意向锁?意向锁的含义是什么?答:引进意向锁是为了提高封锁子系统的效率。
该封锁子系统支持多种封锁粒度。
原因是:在多粒度封锁方法中一个数据对象可能以两种方式加锁—显式封锁和隐式封锁。
因此系统在对某一数据对象加锁时不仅要检查该数据对象上有无(显式和隐式)封锁与之冲突;还要检查其所有上级结点和所有下级结点,看申请的封锁是否与这些结点上的(显式和隐式)封锁冲突;显然,这样的检查方法效率很低。
为此引进了意向锁。
意向锁的含义是:对任一结点加锁时,必须先对它的上层结点加意向锁。
例如事务T要对某个元组加X锁,则首先要对关系和数据库加IX锁。
换言之,对关系和数据库加IX锁,表示它的后裔结点—某个元组拟(意向)加X锁。
引进意向锁后,系统对某一数据对象加锁时不必逐个检查与下一级结点的封锁冲突了。
例如,事务T要对关系R加X锁时,系统只要检查根结点数据库和R本身是否已加了不相容的锁(如发现已经加了IX,则与X冲突),而不再需要搜索和检查R中的每一个元组是否加了X锁或S锁。
13. 试述常用的意向锁:IS锁,IX锁,SIX锁,给出这些锁的相容矩阵。
答:IS锁如果对一个数据对象加IS锁,表示它的后裔结点拟(意向)加S锁。
例如,要对某个元组加S锁,则要首先对关系和数据库加IS锁IX锁如果对一个数据对象加IX锁,表示它的后裔结点拟(意向)加X锁。
例如,要对某个元组加X锁,则要首先对关系和数据库加IX锁。
SIX锁如果对一个数据对象加SIX锁,表示对它加S锁,再加IX锁,即SIX = S + IX。
相容矩阵(略)14. 理解并解释下列术语的含义:封锁,活锁,死锁,排它锁,共享锁,并发事务的调度,可串行化的调度,两段锁协议。
答:(略,已经在上面有关习题中解答)*25. 试述你了解的某一个实际的DBMS产品的并发控制机制。
答:(略,参见《概论》第8节,简单介绍了有关Oracle的并发控制机制。
)。