数据库概论试题(并发控制)

合集下载

数据库并发控制例题

数据库并发控制例题

数据库并发控制例题摘要:一、数据库并发控制概述1.并发控制的目的2.并发控制的基本概念二、并发控制的方法1.封锁技术2.时间戳技术3.乐观并发控制4.悲观并发控制三、并发控制的例题解析1.封锁技术例题2.时间戳技术例题3.乐观并发控制例题4.悲观并发控制例题正文:一、数据库并发控制概述在数据库系统中,为了提高系统的并发性能和事务处理能力,需要对多个事务同时访问同一数据资源进行有效的控制。

这就是数据库并发控制的任务。

并发控制的主要目的是保证数据的一致性和完整性,防止出现脏读、不可重复读和幻读等问题。

并发控制涉及的基本概念包括事务、事务管理、并发事务、冲突、隔离级别等。

事务是数据库中的一种逻辑工作单元,它是一个原子性、一致性、隔离性和持久性(ACID)的操作序列。

事务管理是指数据库系统对事务的并发执行进行控制的过程。

并发事务是指多个事务同时访问同一份数据。

冲突是指多个事务对同一份数据进行读写操作时产生的不一致现象。

隔离级别是指事务在并发执行时,对其他事务可见的程度。

二、并发控制的方法为了实现并发控制,数据库系统采用了以下几种方法:1.封锁技术:通过封锁数据资源,限制对数据的访问,以保证数据的一致性和完整性。

封锁技术包括共享锁和排他锁。

共享锁允许多个事务同时对数据加锁,但只允许读取数据。

排他锁只允许一个事务对数据加锁,其他事务既不能读取也不能修改数据。

2.时间戳技术:通过为事务分配时间戳,来控制事务的执行顺序。

时间戳较小的事务优先执行,以避免冲突。

时间戳技术包括乐观时间戳和悲观时间戳。

乐观时间戳在事务开始执行时分配,并随着事务的执行不断更新。

悲观时间戳在事务开始执行前分配,并在事务执行过程中保持不变。

3.乐观并发控制:不进行实际的资源封锁,而是在提交事务时检查数据的一致性和完整性。

如果数据在提交前已经被其他事务修改,则回滚事务并重试。

乐观并发控制依赖于事务的预处理和后处理,通过这两阶段来检测和解决冲突。

数据库事务处理与并发控制考试试卷

数据库事务处理与并发控制考试试卷

数据库事务处理与并发控制考试试卷(答案见尾页)一、选择题1. 数据库事务处理的基本概念是什么?A. 一系列的操作序列,这些操作要么全部执行成功,要么全部不执行B. 用于存储数据的软件C. 确保数据一致性的机制D. 数据库管理系统2. 事务的ACID特性是指什么?A. 原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)B. 可靠性(Reliability)、可用性(Availability)、完整性(Integrity)C. 事务(Transaction)、并发(Concurrency)、恢复(Recovery)、安全(Security)D. 数据(Data)、管理(Management)、控制(Control)3. 在数据库系统中,如何实现事务的隔离性?A. 使用锁机制B. 设置事务的隔离级别C. 使用多版本并发控制(MVCC)D. 优化查询语句4. 什么是死锁?如何避免死锁?A. 两个或多个事务互相等待对方释放资源B. 数据库系统无法正常运行C. 资源分配不当导致性能下降D. 频繁进行磁盘读写操作5. 什么是并发控制的基本原则?A. 串行化(Serialization)B. 隔离性(Isolation)C. 活动锁(Pessimistic Locking)D. 乐观锁(Optimistic Locking)6. 在数据库系统中,如何确保数据的一致性?A. 使用约束(Constraints)B. 应用事务处理C. 进行数据备份D. 设计合理的索引7. 什么是阻塞?在数据库系统中如何避免阻塞?A. 事务等待某个条件满足才能继续执行B. 数据库服务器响应延迟C. 多个用户同时访问相同数据D. 网络连接中断8. 在并发控制中,哪种锁机制可以减少冲突?A. 共享锁(Shared Lock)B. 排他锁(Exclusive Lock)C. 更新锁(Update Lock)D. 行级锁(Row-Level Lock)9. 什么是乐观锁?它的实现方式是什么?A. 一种并发控制策略,通过假设冲突很少发生来减少加锁的开销B. 在每次更新数据时检查是否有其他事务修改了该数据C. 使用时间戳(Timestamp)来检测冲突D. 限制多个事务同时访问同一数据10. 在数据库系统中,如何处理事务的回滚?A. 自动回滚B. 手动回滚C. 根据错误类型决定是否回滚D. 由数据库管理员决定11. 数据库事务必须具备的特性中,哪个特性确保了事务的所有操作要么全部提交成功,要么全部失败回滚?A. 原子性(Atomicity)B. 一致性(Consistency)C. 隔离性(Isolation)D. 持久性(Durability)12. 在数据库系统中,为了保证数据的一致性和完整性,通常会使用哪种锁机制?A. 表级锁(Table-level Locking)B. 行级锁(Row-level Locking)C. 页面级锁(Page-level Locking)D. 数据库锁(Database Locking)13. 以下关于并发控制的描述,哪项是不正确的?A. 并发控制的主要目的是提高系统的并发性能B. 两阶段提交(Two-phase Commit, 2PC)是一种常用的并发控制协议C. 乐观并发控制假设冲突很少发生,因此不使用锁D. 使用锁可以避免死锁的发生14. 在数据库系统中,实现事务的原子性需要哪些方面的支持?A. 隔离性(Isolation)B. 持久性(Durability)C. 一致性(Consistency)D. 原子性(Atomicity)15. 下面关于并发控制的叙述,哪项是错误的?A. 死锁是指两个或多个事务互相等待对方释放资源的情况B. 避免死锁的一种方法是按照固定顺序对资源进行加锁C. 两阶段提交协议(2PC)可以确保所有事务都提交或都不提交D. 串行化(Serialization)是并发控制的最简单策略16. 以下关于数据库并发控制的基本原则的叙述,哪项是不正确的?A. 低隔离级别意味着更低的并发冲突B. 高隔离级别提供了更强的数据一致性保障C. 隔离级别越高,并发性能越低D. 并发性能和数据一致性之间需要权衡17. 在数据库系统中,如何处理事务的持久性?A. 将事务的所有修改写入磁盘上的日志文件B. 使用事务日志备份来恢复数据C. 在事务提交后立即将修改写入磁盘D. 使用缓存来暂存修改18. 以下关于数据库并发控制的叙述,哪项是正确的?A. 读未提交(Read Uncommitted)并发控制级别允许一个事务读取另一个尚未提交的事务的修改B. 读已提交(Read Committed)并发控制级别避免了脏读问题C. 可重复读(Repeatable Read)并发控制级别解决了不可重复读问题D. 串行化(Serializable)并发控制级别是最严格的,但也是最有效的19. 在数据库系统中,如何处理事务的隔离性和一致性的权衡?A. 根据应用的需求选择适当的隔离级别B. 尽量提高隔离级别以增强数据一致性C. 无需关注隔离级别,只需确保提交事务D. 无法在数据库层面解决隔离性和一致性的矛盾20. 数据库事务的基本特性包括()。

数据库并发控制例题

数据库并发控制例题

数据库并发控制例题摘要:一、数据库并发控制概述1.并发控制的目的2.并发控制的手段二、数据库并发控制的原理1.封锁技术2.时间序列控制3.乐观控制三、数据库并发控制的例题解析1.封锁技术例题2.时间序列控制例题3.乐观控制例题四、例题总结与展望正文:一、数据库并发控制概述在数据库系统中,为了提高系统的并发性能和事务处理能力,需要对多个事务同时访问共享数据进行控制,这就是数据库并发控制。

并发控制的主要目的是保证数据的一致性和完整性,防止数据冲突和脏读等现象。

实现并发控制的手段主要有封锁技术、时间序列控制和乐观控制等。

二、数据库并发控制的原理1.封锁技术:封锁技术是一种广泛应用于数据库并发控制的方法,通过对数据对象加锁来防止多个事务同时对同一数据进行修改,从而保证数据的一致性。

2.时间序列控制:时间序列控制是根据事务执行的时间顺序来控制并发访问。

该方法通过为事务分配优先级,按照优先级顺序执行事务,从而避免冲突。

3.乐观控制:乐观控制是一种基于事务提交前对数据所做的修改进行检测的方法。

事务在执行修改操作时,不加锁,而是在提交时检测是否与其他事务产生冲突,若检测到冲突,则回滚事务并重新执行。

三、数据库并发控制的例题解析1.封锁技术例题:假设一个数据库系统中有两个事务T1 和T2,T1 正在对数据A 进行修改,此时T2 也要对数据A 进行修改。

通过封锁技术,可以为数据A 加锁,使得T2 在T1 完成修改前无法对数据A 进行修改,从而避免冲突。

2.时间序列控制例题:假设一个数据库系统中有三个事务T1、T2 和T3,它们的优先级顺序为T1 > T2 > T3。

通过时间序列控制,可以按照优先级顺序执行事务,首先执行T1,然后执行T2,最后执行T3。

这样可以避免优先级较低的事务与优先级较高的事务产生冲突。

3.乐观控制例题:假设一个数据库系统中有两个事务T1 和T2,T1 正在对数据A 进行修改,此时T2 也要对数据A 进行修改。

数据库系统概论试题及答案精选全文

数据库系统概论试题及答案精选全文

可编辑修改精选全文完整版试题四一、单项选择题得分本大题共20小题,每小题分,共30分在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内;错选、多选或未选均无分;1. 数据库系统的特点是、数据独立、减少数据冗余、避免数据不一致和加强了数据保护;A.数据共享B.数据存储C.数据应用D.数据保密2.数据库系统中,物理数据独立性是指;A.数据库与数据库管理系统的相互独立B.应用程序与DBMS的相互独立C.应用程序与存储在磁盘上数据库的物理模式是相互独立的D.应用程序与数据库中数据的逻辑结构相互独立3.在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是;A.外模式B.内模式C.存储模式D.模式4. 关系模型的数据结构是;A.层次结构B.二维表结构C.网状结构 D.封装结构5. 关系模型中,一个候选码;A.可由多个任意属性组成B.至多由一个属性组成C.可由一个或多个其值能唯一标识该关系模式中任何元组的属性组成D.必须由多个属性组成6.自然连接是构成新关系的有效方法;一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的;A.元组B.行C.记录D.属性7.设关系R和S的属性个数分别是2和3,那么R S等价于1<2A.σ1<2R⨯S B.σ1<4R⨯SC.σ1<2R S D.σ1<4R S8.SQL语言具有的功能;A.关系规范化、数据操纵、数据控制B.数据定义、数据操纵、数据控制C.数据定义、关系规范化、数据控制D.数据定义、关系规范化、数据操纵9.假定学生关系是SS,SNAME,SEX,AGE,课程关系是CC,CNAME,TEACHER,学生选课关系是SCS,C,GRADE;要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系;A.S B.SC,C C.S,SC D.S,C,SC10. 已知关系SPJS,P,J,QTY,把对关系SPJ的属性QTY的修改权授予用户张三的T-SQL语句是 CA. GRANT QTY ON SPJ TO 张三B. GRANT UPDA TE ON SPJ TO张三C. GRANT UPDA TE QTY ON SPJ TO张三D. GRANT UPDA TE ON SPJ QTY TO张三11.图1中是关系完备的系统A B C D图112.在RU中,如果X→Y,并且对于X的任何一个真子集X',都有X'→Y,则;A. Y函数依赖于XB. Y对X完全函数依赖C.X为U的候选码D. R属于2NF13.关系规范化中的插入操作异常是指A.不该删除的数据被删除B.不该插入的数据被插入C.应该删除的数据未被删除D.应该插入的数据未被插入14.在数据库设计中, E-R图产生于A.需求分析阶段B.物理设计阶段C.逻辑设计阶段D.概念设计阶段15.在合并分E-R图时必须消除各分图中的不一致;各分E-R图之间的冲突主要有三类,即属性冲突、命名冲突和结构冲突,其中命名冲突是指;A.命名太长或太短B.同名异义或同义异名C.属性类型冲突D.属性取值单位冲突16.事务是数据库运行的基本单位;如果一个事务执行成功,则全部更新提交;如果一个事务执行失败,则已做过的更新被恢复原状,好像整个事务从未有过这些更新,这样保持了数据库处于状态;A.安全性B.一致性C.完整性D.可靠性17. 用来记录对数据库中数据进行的每一次更新操作;A.后援副本B.日志文件C.数据库D.缓冲区18.若事务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锁和X锁;19. 设有两个事务T1、T2,其并发操作如图1所示,下面评价正确的是A. 该操作不存在问题B.该操作丢失修改C.修改该操作不能重复读D.该操作读“脏”数据T1 T2readAreadBsum=A+BreadAA=A2writeAreadAreadBsum=A+BwriteA+B图220. 已知事务T 1的封锁序列为:LOCK SA …LOCK SB …LOCK XC…UNLOCKB …UNLOCK A …UNLOCK C事务T 2的封锁序列为:LOCK SA …UNLOCK A …LOCK SB…LOCK XC …UNLOCK C …UNLOCK B则遵守两段封锁协议的事务是 和T 2 D .没有二、填空题本大题共10小题,每小题1分,共10分请在每小题的空格中填上正确答案;错填、不填均无分;1. 数据管理经历了人工管理、文件系统、 三个阶段;2. 数据模型由数据结构、数据操作和 三部分组成;3. 在Student 表的Sname 列上建立一个聚簇索引的SQL 语句为:CREATE Stusname ON studentSname4. SELECT 语句查询条件中的谓词“=ANY ”与运算符 等价;5. 关系模式R{A,B,C},{A,C →B,A,B →C,B →C}最高可达到第 范式;6. 数据抽象主要有分类和 两种;7. 存在一个等待事务集{T 0,T 1,…,T n },其中T 0正等待被T 1锁住的数据项,T 1正等待被T 2锁住的数据项,T n-1正等待被T n 锁住的数据项,且T n 正等待被T 0锁住的数据项,这种情形称为 ; 8. “为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的 设计阶段;9. 并发控制的主要方法是 机制;10. 故障分为事务故障、 和介质故障三种;三、简答题本大题共3小题,每小题5分,共15分1. 简述等值连接与自然连接的区别和联系;2.说明视图与基本表的区别和联系3.简述事务的特性;四、设计题第1题20分,第2题10分,共30分1.设有一个工程供应数据库系统,包括如下四个关系模式:●SSno,Sname, Status,City;●PPno,Pname,Color,Weight;●JJno,Jname,City;●SPJSno,Pno,Jno,Qty;供应商表S由供应商号、供应商名、状态、城市组成;零件表P 由零件号、零件名、颜色、重量组成;工程项目表J由项目号、项目名、城市组成;供应情况表SPJ由供应商号、零件号、项目号、供应数量组成;1用关系代数查询没有使用天津供应商生产的红色零件的工程号;3分2用关系代数查询至少使用了供应商S1所供应的全部零件的工程号JNO;3分3用ALPHA语言查询供应工程J1零件为红色的供应商号SNO;2分4用T-SQL语句建立“供应商”S表主码必须定义;2分5用SQL查询工程J1使用的各种零件的名称和使用数量;3分6用SQL查询没有使用天津供应商生产的零件的工程号;3分7用SQL语句将全部红色零件改为蓝色;2分8用SQL语句将S2,P4,J6,400插入供应情况关系;2分2.设有关系STUDENTS,SNAME,SDEPT,MNAME,CNAME,GRADE,S,CNAME 为候选码,设关系中有如下函数依赖:S,CNAME→SNAME,SDEPT,MNAMES→SNAME,SDEPT,MNAMES,CNAME→GRADESDEPT→MNAME试求下列问题:1关系STUDENT属于第几范式3分2如果关系STUDENT不属于BCNF,请将关系STUDENT逐步分解为巧BCNF;7分要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖;五、综合题15分某医院病房管理系统中,包括四个实体型,分别为:科室:科名,科地址,科电话病房:病房号,病房地址医生:工作证号,姓名,职称,年龄病人:病历号,姓名,性别且存在如下语义约束:①一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室;②一个医生可负责多个病人的诊治,一个病人的主管医生只有一个;③一个病房可入住多个病人,一个病人只能入住在一个病房;注意:不同科室可能有相同的病房号;完成如下设计:1画出该医院病房管理系统的E-R图;5分2将该E-R图转换为关系模型;5分要求:1:1和1:n的联系进行合并3指出转换结果中每个关系模式的主码和外码;5分试题四参考答案与评分标准一、选择题每题分1.A 2.C 3.D 4.B 5.C 6.D 7.B 8.B 9.D 10.C11.C 12.B 13.D 14.D 15.B 16.B 17.B 18.C 19.C 20.A二、填空题每题1分1. 数据库系统2. 完整性约束3. CLUSTER INDEX4. IN5.三6.聚集7.死锁8.物理9.封锁10.系统故障三、简答题每题5分1、参考答案:答:连接运算符是“=”的连接运算称为等值连接;它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组,即等值连接为:R∞S={trts|tr∈R∧ts∈S∧trA=tsB}A=B自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉;2、参考答案:答:视图是从一个或几个基本表导出的表,它与基本表不同,是一个虚表,数据库中只存放视图的定义,而不存放视图对应的数据,这些数据存放在原来的基本表中,当基本表中的数据发生变化,从视图中查询出的数据也就随之改变;视图一经定义就可以像基本表一样被查询、删除,也可以在一个视图之上再定义新的视图,但是对视图的更新操作有限制;3、参考答案:答:事务具有四个特性,即ACID特性:1原子性:事务中包括的所有操作要么都做,要么都不做;2一致性:事务必须使数据库从一个一致性状态变到另一个一致性状态;3隔离性:一个事务内部的操作及使用的数据对并发的其他事务是隔离的;4持续性:事务一旦提交,对数据库的改变是永久的;四、设计题1、参考答案:1πJno J-πJnoσCity='天津' S SPJσColor='红' P2πPno,Jno SPJ÷πPnoσSno='S1' SPJ3RANGE P PXGET W : ='J1'∧∃PX=∧PX..Color='红'4CREATE TABLE SSno CHAR6 PRIMARY KEY,Sname CHAR10,Status INT,City CHAR20;5SELECT Pname,TotalQty FROM SELECT Pno,SUMQty TotalQty FROM SPJ WHERE Jno='J1' GROUP BY Pno X,P WHERE =;6SELECT Jno FROM J WHERE Jno NOT IN SELECT Jno FROM SPJ WHERE Sno IN SELECT Sno FROM S WHERE City='天津';或:SELECT Jno FROM J WHERE NOT EXISTS SELECT FROM SPJ,S WHERE = AND = AND City='天津';或:SELECT Jno FROM J WHERE NOT EXISTS SELECT FROM SPJ WHERE = AND EXISTS SELECT FROM S WHERE = AND City='天津';7UPDATE P SET Color='蓝' WHERE Color='红';8INSERT INTO SPJ V ALUES'S2','P4','J6',400评分标准:第1、2、5、6每题3分,其余每题2分,书写是否正确、规范、合理需酌情处理,能正确写出大体结构给一半分,局部漏写、错写视情节扣分,大体结构不正确一律不给分;2、参考答案:1关系STUDENT是1NF,因为F中存在非主属性S NAME,SDEPT,MNAME对侯选码S,CNAME的部分函数依赖;2首先消除部分函数依赖S,CNAME→SNAME,SDEPT,MNAME将关系分解为:R1S,SNAME,SDEPT,MNAME,F1 = { S→SNAME,SDEPT,MNAME}R2S,CNAME,GRADE,F2={S,CNAME→GRADE}在关系R1中存在非主属性对候选码的传递函数依赖S→SDEPT,所以将R1进一步分解:R11S,SNAME,SDEPT ,F11 = { S→SNAME,SDEPT}R12SDEPT,MNAME,F12 = { SDEPT→MNAME}在R2,R11,R12关系模式中函数依赖都是非平凡的,并且决定因素均是候选码,所以上述三个关系模式均是BCNF;评分标准:1回答R是1NF并正确说明理由3分,没有正确回答出理由扣1分;2两次分解各3分,每步所得的两个关系模式各分;正确回答消除什么类型的函数依赖和正确说明所得的三个关系模式是BCNF各1分;五、综合题参考答案:1本题的E-R图如下图所示;某医院病房管理系统的基本E-R图2转化后的关系模式如下:科室科名,科地址,科电话病房病房号,病房地址,科名医生工作证号,姓名,职称,年龄,科名病人病历号,姓名,性别,主管医生,病房号,科名3每个关系模式的主码、外码如下:科室:主码是科名;病房:主码是科名十病房号,外码是科名;医生:主码是工作证号,外码是科名;病人:主码是病历号,外码是科名十病房号;评分标准:1四个联系各分,名称一定可表达联系含义,联系类型错误不给分;四个实体型属性漏写、错写扣分,漏写一个实体型扣1 分;2转化后的科室关系模式、病房关系模式、医生关系模式各1分,有一个属性不正确均不给分,病人关系模式2分,漏写一个属性扣1分,3病房关系模式主码1 分、病人关系模式外码分,其余各分;。

数据库并发控制例题

数据库并发控制例题

数据库并发控制例题
当多个用户或事务同时访问和操作同一数据库时,可能会出现数据不一致的情况。

为了解决这个问题,需要进行并发控制。

下面是一个关于数据库并发控制的例题:
假设有一个银行系统,其中有多个用户同时进行存款和取款操作。

如果没有并发控制,可能会出现以下问题:
1.丢失修改:假设用户A正在向账户中存入1000元,但在提交之前,用户B查询到了这个账户余额为900元,并立即取出了500元。

如果此时用户A的存款操作先于用户B的取款操作完成,那么用户的账户余额就会变为1400元,而实际上应该为1400元。

2.不可重复读:假设用户A查询到了账户余额为1000元,但在进行一些操作后再次查询时,发现账户余额已经变为900元。

这可能是因为用户B在此期间进行了取款操作。

3.读“脏”数据:如果用户A正在进行取款操作,但还没有提交,此时用户B查询到了这个账户余额为1500元(实际上应该是1400元),并取出了500元。

如果用户A最终提交了取款操作,那么就会造成用户的账户被多扣除了500元。

为了避免这些问题,可以使用并发控制技术,例如锁机制和事务隔离级别等。

通过合理地设置锁和事务隔离级别,可以保证多个用户或事务对同一数据的访问和操作不会互相干扰,从而保持数据的一致性和完整性。

数据库系统概论考试题

数据库系统概论考试题

数据库系统概论考试题一、单选题(共97题,每题1分,共97分)1.在面向对象数据库系统中,不同类的对象共享公共部分的结构和特性称为()。

A、继承性B、通用性C、共享性D、一致性正确答案:A2.关于ADO对象模型中的RecordSet,下述说法正确的是()=A、它用于定义连接的数据库名B、它用于定义数据的来源C、它是一个对象,用于在客户端内存中存放数据查询的结果D、它是一个对象,用于在服务器端内存中存放数据查询的结果正确答案:C3.在执行查询语句时,DBMS从数据字典中调岀相应的内模式描述,并从模式映象到内模式,从而确定应读入的()。

A、逻辑数据B、物理数据C、操作序列D、优化策略正确答案:B4.VB6.0中RecordSet对象的UPDATE方法的作用是(A、在内存中开辟一个存放新记录的缓冲区B、将数据缓冲区中的内容保存到数据库中C、更改用户屏幕上显示的数据D、更改数据缓冲区中当前行指针的位置正确答案:B5.对关系数据库来说,下面哪些说法是错误的()。

A、每一列的分量是同一种类型数据,来自同一个域B、不同列的数据可以出自同一个域C、行的顺序可以任意交换,但列的顺序不能任意交换D、关系中的任意两个元组不能完全相同正确答案:C6.SQL的运算参数和结果都是()形式。

A、数据项B、属性C、关系D、元组正确答案:C7.对于联机事务处理系统和数据仓库系统中的数据,下列说法正确的是()。

A、联机事务处理系统中的数据库规模一般大于数据仓库系统中的数据规模B、-般情况下,在安全性和-致性要求上,对数据仓库系统中数据的要求要高于对联机事务处理系统中数据的要求C、联机事务处理系统中的数据一般按面向业务应用的方式组织,数据仓库系统屮的数据一般按面向分析主题的方式组织D、一般情况下,联机事务处理系统中的数据不能被修改,数据仓库系统中的数据可被修改正确答案:C8.概念结构设计的目的是产生一个能反映(企业)组织信息需求的()A、DFDB、DDC、E-R图D、SA正确答案:C9.关于"死锁”,下列说法中正确的是()。

数据库系统概论 第七到八章 习题及答案

数据库系统概论  第七到八章 习题及答案

第七、八章习题一、选择题: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.事务的持续性是指____。

王珊《数据库系统概论》章节题库(并发控制)【圣才出品】

王珊《数据库系统概论》章节题库(并发控制)【圣才出品】

第11章并发控制一、选择题1.实现数据库并发控制的主要方法是()。

A.授权B.索引C.日志D.封锁【答案】D【解析】数据库管理系统对事务的并发执行进行控制,以保证数据库一致性,最常用的方法是封锁的方法,即当一个事务访问某个数据项时,以一定的方式锁住该数据项,从而限制其他事务对该数据项的访问。

2.在并发控制技术中最常用的是封锁,对于共享锁(S)和排他锁(X)来说,下面列出的相容关系中,哪一个是正确的()。

A.X-X:相容B.S-S:相容C.S-X:相容D.X-S:相容【答案】B【解析】为了避免发生并发操作引起的数据不一致性问题,则采用数据封锁技术实现并发控制。

封锁是防止存取同一资源的用户之间相互干扰的机制,即当一个用户对数据库某个数据对象执行修改操作时,对该部分数据加锁,拒绝其他用户对该部分的并发访问要求,直至该事务执行完毕才释放数据对象;所以只有当两事务都是读取数据且都加S锁时才相容。

3.如果系统发生死锁,参与死锁的进程的个数至少是()个。

A.3B.1C.2D.4【答案】C【解析】由于各进程互相独立地活动,不断申请和释放软硬件资源,可能会出现这样一种状态:两个或两个以上的进程彼此等待对方拥有的而又不会释放的资源,则所有进程都不能进一步向前运行,这种状态就称为死锁。

因此,参与死锁的进程至少是两个。

4.对数据对象施加封锁可能会引起活锁和死锁问题,避免活锁的简单方法是采用()的策略。

A.顺序封锁法B.依次封锁法C.优先级高先服务D.先来先服务【答案】D【解析】活锁:某个事务永远得不到对某个数据资源的封锁,从而永远处于等待状态的现象;采用先来先服务的策略可以有效地避免活锁。

5.二级封锁协议可防止()。

A.不可重复读、丢失修改B.读“脏”数据C.读“脏”数据、丢失修改D.不可重复读、读“脏”数据【答案】C【解析】一级封锁协议可防止丢失修改;二级封锁协议可以防止丢失修改和读“脏”数据;三级封锁协议可防止丢失修改、读“脏”数据和不可重复读。

第八章 数据库并发控制练习和答案

第八章 数据库并发控制练习和答案

第八章数据库并发控制一、选择题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. 数据库事务的基本特性包括哪些?A. 原子性B. 一致性C. 隔离性D. 持久性2. 在数据库系统中,如何实现事务的隔离性?A. 使用锁机制B. 使用多版本并发控制(MVCC)C. 使用归档日志D. 使用时间戳排序3. 什么是死锁?如何避免死锁?A. 死锁是指两个或多个事务互相等待对方释放资源B. 避免死锁的方法包括按顺序请求资源、超时设置、资源分级等C. 死锁是数据库系统的正常现象D. 死锁无法通过任何方法避免4. 什么是并发控制?为什么需要并发控制?A. 并发控制是为了防止多个事务同时修改同一条记录导致数据不一致B. 并发控制是为了提高数据库系统的性能C. 并发控制是为了确保数据库系统的数据完整性D. 并发控制是为了优化数据库系统的查询速度5. 在数据库系统中,如何处理事务的持久性?A. 使用日志记录事务的执行过程B. 使用备份恢复机制C. 使用事务日志D. 使用缓存机制6. 什么是ACID属性?请简要解释每个属性的含义。

A. 原子性(Atomicity):事务作为一个整体被执行,不可分割B. 一致性(Consistency):事务必须使数据库从一个一致性状态变换到另一个一致性状态C. 隔离性(Isolation):并发的事务之间不会互相干扰D. 持久性(Durability):一旦事务提交,则其结果就是永久的,不会被回滚7. 在数据库系统中,如何实现并发控制中的最小权限原则?A. 限制每个用户只能访问他们需要的数据B. 限制每个用户只能执行他需要的操作C. 限制每个用户只能访问他创建的数据D. 限制每个用户只能访问他被授权的数据8. 什么是锁?请简要介绍几种常见的锁类型。

A. 共享锁(Shared Lock):允许多个事务同时读取数据,但不允许写入B. 排他锁(Exclusive Lock):只允许一个事务读取或写入数据C. 更新锁(Update Lock):在读取数据的同时,准备更新数据D. 行级锁(Row-Level Locking):锁定数据的一行,而不是整个表9. 在数据库系统中,如何解决冲突?请简要介绍几种冲突解决方法。

Web数据库事务处理与并发控制考试

Web数据库事务处理与并发控制考试

Web数据库事务处理与并发控制考试(答案见尾页)一、选择题1. 什么是事务?A. 事务是一系列的操作序列,这些操作要么全部执行成功,要么全部不执行。

B. 事务是一个程序中的单个操作。

C. 事务是数据库中的一种数据模型。

D. 事务是数据库管理系统中的一个重要概念。

2. 以下哪个不是ACID属性?A. 原子性(Atomicity)B. 一致性(Consistency)C. 隔离性(Isolation)D. 可恢复性(Recoverability)3. 在Web数据库中,哪种锁机制可以防止多个用户同时修改同一条记录?A. 共享锁(Shared Lock)B. 排他锁(Exclusive Lock)C. 更新锁(Update Lock)D. 意向锁(Intention Lock)4. 什么是死锁?如何避免死锁?A. 死锁是指两个或多个事务互相等待对方释放资源,导致它们都无法继续执行的情况。

B. 避免死锁的方法包括按照固定顺序访问资源、使用锁超时、使用死锁检测算法等。

C. 死锁只发生在多个用户同时访问多个资源的情况下。

D. 死锁是不可预防的。

5. 什么是并发控制?它在Web数据库中的作用是什么?A. 并发控制是指在多个用户同时访问数据库时,确保数据一致性和完整性的过程。

B. 并发控制在Web数据库中的作用是防止多个用户同时修改同一条记录导致的冲突。

C. 并发控制是数据库管理系统的一个核心功能,它确保了即使在多个用户同时访问数据库的情况下,数据也能保持一致性和完整性。

D. 并发控制只适用于Web数据库,而不适用于其他类型的数据库。

6. 以下哪种隔离级别最小化了多个用户同时修改同一条记录时的冲突?A. 读未提交(Read Uncommitted)B. 读已提交(Read Committed)C. 可重复读(Repeatable Read)D. 串行化(Serializable)7. 在Web数据库中,如何实现行级锁定来避免事务冲突?A. 使用数据库的行级锁定功能,如SELECT … FOR UPDATE。

2022年厦门理工学院信息管理与信息系统专业《数据库概论》科目期末试卷B(有答案)

2022年厦门理工学院信息管理与信息系统专业《数据库概论》科目期末试卷B(有答案)

2022年厦门理工学院信息管理与信息系统专业《数据库概论》科目期末试卷B(有答案)一、填空题1、数据库恢复是将数据库从______状态恢复到______的功能。

2、关系规范化的目的是______。

3、DBMS的完整性控制机制应具备三个功能:定义功能,即______;检查功能,即______;最后若发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。

4、在VB 6.0中,已经用Adobel连接到数据库,并已绑定到数据库中的某个关系表,现要通过此控件向表中插入数据,需要用到Adobel.Recordset的_____方法和Update方法,使用Adobel.Recordset的_____方法可以使当前行指针在结果集中向前移动一行。

5、如果多个事务依次执行,则称事务是执行______;如果利用分时的方法,同时处理多个事务,则称事务是执行______。

6、在RDBMS中,通过某种代价模型计算各种查询的执行代价。

在集中式数据库中,查询的执行开销主要包括______和______代价。

在多用户数据库中,还应考虑查询的内存代价开销。

7、主题在数据仓库中由一系列实现。

一个主题之下表的划分可按______、______数据所属时间段进行划分,主题在数据仓库中可用______方式进行存储,如果主题存储量大,为了提高处理效率可采用______方式进行存储。

8、设在SQL Server 2000环境下,对“销售数据库”进行的备份操作序列如下图所示。

①出现故障后,为尽可能减少数据丢失,需要利用备份数据进行恢复。

首先应该进行的恢复操作是恢复_____,第二个应该进行的恢复操作是恢复_____。

②假设这些备份操作均是在BK设备上完成的,并且该备份设备只用于这些备份操作,请补全下述恢复数据库完全备份的语句RESTORE_____FROM BKWITH FILE=1,_____;9、关系数据库中基于数学的两类运算是______________和______________。

数据库概论及实例复习资料

数据库概论及实例复习资料

1、在并发控制中引入两段锁协议的目的是()。

(2.0)A、为了解决并行执行时可能引起的死锁问题B、为了解决并行执行时可能引起的活锁问题C、为了解决交叉调度的不可串行化问题D、为了解决不同的调度导致不同的运行结果正确答案: C2、概念模型独立于()。

(2.0)A、 E-R模型B、硬件设备和DBMSC、操作系统和DBMSD、 DBMS正确答案: B3、在关系数据库系统中,如果数据库的关系模型发生了变化,那么用户的应用程序()。

(2.0)A、必须作弊B、必须改变C、自动改变D、可以不变正确答案: D4、笛卡尔积是域上的一种()运算。

(2.0)A、集合B、算术C、逻辑D、科学操纵语言正确答案: A5、在数据库中,面向对象的数据模型是一种()。

(2.0)A、概念模型B、逻辑模型C、物理模型D、形象模型正确答案: B6、以下哪种操作能够实现实体完整性()。

(2.0)A、设置唯一键B、设置外键C、减少数据冗余D、设置主键正确答案: D7、规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足:其每一属性都是( )。

(2.0)A、互不相关的B、不可分解的C、长度可变的D、互相关联的正确答案: B8、如果模式是BCNF,则模式R必定是________,反之,则___________成立。

()(2.0)A、3NF,不一定B、3NF,一定C、2NF,不一定D、2NF,一定正确答案: A9、在数据库管理系统中,以下 SQL 语句书写顺序正确的是()。

(2.0)A、SELECT→FROM→GROUP BY→WHEREB、SELECT→FROM→WHERE→GROUP BYC、SELECT→WHERE→GROUP BY→FROMD、SELECT→WHERE→FROM→GROUP BY正确答案: B10、在S表中的STU_NAME列上创建一个唯一性索引IX_S,正确的命令是()。

(2.0)A、 CREATE UNIQUE INDEX IX_S ON S(STU_NAME)B、 CREATE CLUSTERED INDEX IX_S ON S(STU_NAME)C、 CREATE INDEX IX_S ON S(STU_NAME)D、 CREATE INDEX IX_S ON S(STU_NAME DESC)正确答案: A11、SQLServer支持()的登录方式。

并发控制练习题

并发控制练习题
10
数据库系统工程师
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
选择题

数据库概论试题(并发控制)

数据库概论试题(并发控制)

3.多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行它们时的结果相同,我们称这种调度策略为_可串行化_的调度。
5.基本的封锁类型有两种:_排它锁(ExclusiveLocks,简称X锁)_和__共享锁(ShareLocks,简称S锁)__。
6.什么是封锁?
答:封锁就是事务T在对某个数据对象例如表、记录等操作之前,先向系统发出请求,对其加锁。加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其他的事务不能更新此数据对象。封锁是实现并发控制的一个非常重要的技术。
第8章并பைடு நூலகம்控制
1.并发操作带来的数据不一致性包括:__丢失__、__修改不可重复读__和__读“脏”数据 __。
2.在数据库中为什么要并发控制?
答:数据库是共享资源,通常有许多个事务同时在运行。当多个事务并发地存取数据库时就会产生同时读取和/或修改同一数据的情况。若对并发操作不加控制就可能会存取和存储不正确的数据,破坏数据库的一致性。所以数据库管理系统必须提供并发控制机制。
16.什么样的并发调度是正确的调度?
答:可串行化(Serializable)的调度是正确的调度。可串行化的调度的定义:多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行它们时的结果相同,我们称这种调度策略为可串行化的调度。
7.在数据库并发控制中,两个或多个事务同时处在相互等待状态,称为__死锁__。
10.__封锁对象的大小_被称为封锁的粒度。
答案:封锁对象的大小
12.什么是活锁?什么是死锁?
13.试述活锁的产生原因和解决方法。
14.请给出预防死锁的若干方法。
15.请给出检测死锁发生的一种方法,当发生死锁后如何解除死锁?

数据库概论试题答案

数据库概论试题答案
∏snum,sname(σame = ‘程序设计‘∧um = SC.snum∧SC.score >90∧SC.snum = S.snum(S))
③至少选修了C1和C2课程的学生学号。(3’)
∏snum(σame = C1∧um = SC.snum∧SC.snum = S.snum(S))∩∏snum(σame = C2∧um = SC.snum∧SC.snum = S.snum(S))
1、将查询转换成某种内部表示,通常是语法树。
2、根据一定的等价变换规则把语法树转换成标准(优化)形式。
3、选择低层的操作算法。
4、生成查询计划。
5.简述事物遵守两段锁协议和事物调度可串行化的关系
如果事务中所有的加锁操作都在事务的第一个解锁操作之前进行,那么这个事务是遵循两段锁协议的。
如果一个调度中的每个事务都遵循两段锁协议,那么该调度必然是冲突可串行化的。
3.设有关系模式student(snum,sname,sdept,mname,cname,grade),其中(snum,sname)为主码,设关系中有如下函数依赖:
{snum,cname}->{sname,sdept,mname}
{snum}->{sname,sdept,mname}
{snum,cname}->{grade}
3.如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为该关系的外键。
4.SQL语言具有对数据定义、查询、操作和管理等四个方面的功能。
5.数据库系统的三级模式结构分别为:模式、内模式、外模式;二级映象分别为:外模式/模式映象,模式/内模式映象
6.在SQL所支持的数据库系统的三级模式结构中,视图属于外模式。

《数据库概论》练习题及答案

《数据库概论》练习题及答案
A、三层模式之间得两种映射B、模式与内模式
C、模式与外模式D、三层模式
12.下面得选项不就是关系数据库基本特征得就是(A)。
A、不同得列应有不同得数据类型B、不同得列应有不同得列名
C、与行得次序无关D、与列得次序无关
13.一个关系只有一个(C)。
A、候选码B、外码
C、主码D、超码
14.解决并发操作带来得数据不一致问题普遍采用(B)技术。
A、更新视图B、查询
C、在视图上定义新得表D、在视图上定义新得视图
26.关系模式中,满足2NF得模式(B)。
A、可能就是1NF B、必定就是1NF
C、必定就是3NF D、必定就是BCNF
27.概念结构设计就是整个数据库设计得关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS得(B)。
13.SQL得中文全称就是_结构化查询语言。
14.“三分技术,七分管理,十二分基础数据”就是数据库建设得基本规律。
15.事务就是一系列得数据库操作,就是数据库应用程序得基本逻辑单元。
16.数据库得完整性就是指数据得正确性与相容性。
三、名词解释:(每小题3分,共15分)
1、数据独立性
数据独立性就是指建立在数据得逻辑结构与物理结构分离得基础上,用户以简单得逻辑结构操作数据而无需考虑数据得物理结构,转换工作由数据库管理系统实现。
3、BCNF每一个决定因素都包含码得关系模式
4、自然连接特殊得等值连接,它要求两个关系中进行比较得分量必须就是相同得属性组,并且在结果中把重复得属性去掉
5、参照完整性
6、数据
7、数据库管理系统
8、候选码
9、意向锁、
10、数据库
四、问答题:(每小题4分,共20分)

数据库系统概论 SQL CH11_作业解答

数据库系统概论 SQL CH11_作业解答

Slock A
A=Y+2 写回A(=2) Unclok A
Slock A 等待 等待 A=Y*2 等待 写回A(=4) Y=A(=4) Unlock A Unlock A Xclock A A=Y**2 写回A(=16) Unlock A (3)请给出一个非串行化的调度,并给执行结果; T1 T2 T3 Slock A Y=A(=0) Unlock A Slock A Y=A(=0) Xlock A 等待 A=Y+2 写回A(=2) Unclok A Unlock A Slock A 等待 Y=A(=2) Unlock A Xclock A
等待 等待 等待 Y=A(=2) Unlock A Xclock A
Hale Waihona Puke Xclock A 等待 A=Y**2 等待 写回A(=4) 等待 Unlock A A=Y*2 写回A(=0) Unlock A (4)若这3个事务都遵守两段锁协议,请给出一个不产生死锁的可串行
化调度; T1 Slock A Y=A(=0) Xlock A A=Y+2 写回A(=2) Unlock A Unclok A T2 T3
7、请给出检测死锁发生的一种方法,当发生死锁 后如何解除死锁?
答:数据库系统一般采用允许死锁发生,DBMS检测到死锁后加以解除 的方法。 DBMS中诊断死锁的方法与操作系统类似,一般使用超时法或事务 等待图法。 超时法是:如果一个事务的等待时间超过了规定的时限,就认为发 生了死锁。超时法实现简单,但有可能误判死锁,事务因其他原因长时 间等待超过时限时,系统会误认为发生了死锁。若时限设置得太长,又 不能及时发现死锁发生。 DBMS并发控制子系统检测到死锁后,就要设法解除。通常采用的 方法是选择一个处理死锁代价最小的事务,将其撤消,释放此事务持有 的所有锁,使其他事务得以继续运行下去。当然,对撤销的事务所执行 的数据修改操作必须加以恢复。

2022年厦门工学院信息管理与信息系统专业《数据库概论》科目期末试卷B(有答案)

2022年厦门工学院信息管理与信息系统专业《数据库概论》科目期末试卷B(有答案)

2022年厦门工学院信息管理与信息系统专业《数据库概论》科目期末试卷B(有答案)一、填空题1、DBMS的完整性控制机制应具备三个功能:定义功能,即______;检查功能,即______;最后若发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。

2、数据模型是由______________、______________和______________三部分组成。

3、设某数据库中有商品表(商品号,商品名,商品类别,价格)。

现要创建一个视图,该视图包含全部商品类别及每类商品的平均价格。

请补全如下语句: CREATE VIEW V1(商品类别,平均价格)AS SELECT商品类别,_____FROM商品表GROUP BY商品类别;4、对于非规范化的模式,经过转变为1NF,______,将1NF经过转变为2NF,______,将2NF经过转变为3NF______。

5、在SELECT命令中进行查询,若希望查询的结果不出现重复元组,应在SEL ECT语句中使用______保留字。

6、____________、____________、____________和是计算机系统中的三类安全性。

7、设在SQL Server 2000环境下,对“销售数据库”进行的备份操作序列如下图所示。

①出现故障后,为尽可能减少数据丢失,需要利用备份数据进行恢复。

首先应该进行的恢复操作是恢复_____,第二个应该进行的恢复操作是恢复_____。

②假设这些备份操作均是在BK设备上完成的,并且该备份设备只用于这些备份操作,请补全下述恢复数据库完全备份的语句RESTORE_____FROM BKWITH FILE=1,_____;8、在SQL Server 2000中,某数据库用户User在此数据库中具有对T 表数据的查询和更改权限。

现要收回User对T表的数据更改权,下述是实现该功能的语句,请补全语句。

_____UPDATE ON T FROM User;9、在一个关系R中,若每个数据项都是不可再分割的,那么R一定属于______。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第8章并发控制
1.并发操作带来的数据不一致性包括:__丢失__、__修改不可重复读__和__读“脏”数据__。

2.在数据库中为什么要并发控制?
答:数据库是共享资源,通常有许多个事务同时在运行。

当多个事务并发地存取数据库时就会产生同时读取和/或修改同一数据的情况。

若对并发操作不加控制就可能会存取和存储不正确的数据,破坏数据库的一致性。

所以数据库管理系统必须提供并发控制机制。

3.多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行它们时的结果相同,我们称这种调度策略为_可串行化_的调度。

5.基本的封锁类型有两种:_排它锁(ExclusiveLocks,简称X锁)_和__共享锁(ShareLocks,简称S锁)__。

6.什么是封锁?
答:封锁就是事务T在对某个数据对象例如表、记录等操作之前,先向系统发出请求,对其加锁。

加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其他的事务不能更新此数据对象。

封锁是实现并发控制的一个非常重要的技术。

7.在数据库并发控制中,两个或多个事务同时处在相互等待状态,称为__死锁__。

10.__封锁对象的大小_被称为封锁的粒度。

答案:封锁对象的大小
12.什么是活锁?什么是死锁?
13.试述活锁的产生原因和解决方法。

14.请给出预防死锁的若干方法。

15.请给出检测死锁发生的一种方法,当发生死锁后如何解除死锁?
16.什么样的并发调度是正确的调度?
答:可串行化(Serializable)的调度是正确的调度。

可串行化的调度的定义:多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行它们时的结果相同,我们称这种调度策略为可串行化的调度。

相关文档
最新文档