1、第 1 页 共 17 页数据库系统概论作业第一章 概述1. 层次模型的数据结构是_树形_结构;网状模型的数据结构是 网状 结构;关系模型的数据结构是_ 二维表_结构。2数据库系统具有 “数据独立性”特点的原因是因为在数据库系统中( B )(A ) 、采用磁盘作为外存 (B) 、采用三级模式结构(C) 、使用 OS 来访问数据 (D) 、用宿主语言编写应用程序3. 数据库 (DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是( A ) 。(A ) 、 DBS 包括 DB 和 DBMS(B ) 、 DBMS 包括 DB 和 DBS(C) 、 DB 包括 DBS 和 DBMS(
2、D) 、 DBS 就是 DB,也就是 DBMS4数据库系统的数据独立性体现在( B )(A ) 、不会因为数据的变化而影响到应用程序(B ) 、不会因为系统数据存储结构和数据逻辑结构的变化而影响应用程序(C) 、不会因为存储策略的变化而影响存储结构(D) 、不会因为某些存储结构的变化而影响其他的存储结构5要保证数据库的数据独立性,需要修改的是( A )(A ) 、模式与外模式 (B ) 、模式与内模式(C) 、三层之间的两种映射(D) 、三层模式6下述( D )不是 DBA(数据库管理员)的职责。(A) 、完整性约束说明 (B) 、定义数据库模式(C) 、数据库安全 (D) 、数据库管理系统设
3、计7 ( B )是按照一定的数据模型组织的,长期储存在计算机内,可为多个用户共享的数据的集合。(A ) 、数据库系统 (B) 、数据库 (C) 、关系数据库 (D) 、数据库管理系统 8数据模型的三要素是( D ) 。第 2 页 共 17 页(A) 、外模式、模式、内模式 (B) 、关系模型、层次模型、网状模型(C) 、实体、联系、属性(D) 、数据结构、数据操作、完整性约束9. 简述数据库系统的主要特点。(1) 、数据结构化数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。 (2)数据的共享性高,冗余度低,易扩充数据库的数据不再面向某个应用而是面向
4、整个系统, (3)数据独立性高数据独立性包括数据的物理独立性和数据的逻辑独立性。 (4)数据由 DBMS 统一管理和控制数据库的共享是并发的共享,即多个用户可以同时存取数据库中的数据甚至可以同时存取数据库中同一个数据。10.简述数据库系统的三级模式和两级映像。答:数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成。(2分)模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式实际上是数据库数据在逻辑级上的视图,一个数据库只有一个模式,数据库模式以某一种数据模型为基础,统一综合地考虑了所有用户的需求,并将这些需求有机地结合成一个逻辑整体。(
5、1分)外模式也称子模式或用户模式,它是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据购逻辑表示。外模式通常是模式的子集。一个数据库可以有多个外模式。(1分)内模式也称存储模式,一个数据库只有一个内模式,它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。第 3 页 共 17 页第二章 关系数据库1. 设有如下图所示的关系 R,W 和 D:计算下列代数表达式的结果:(1)R 1=Y,T(R) (2)R 2=p5T=e(R) (3)R 3=(R W)(4)R 4=RD第 4 页 共 17 页2、 设有
6、如下图所示的关系 S,SC ,C:关系 SS# SNAME AGE SEX1 李强 23 男2 刘丽 22 女3 张友 22 男关系 CC# CNAME TEACHERK1 C 语言 王华K5 数据库原理 程军K8 编译原理 程军关系 SCS# C# GRADE1 K1 832 K1 85第 5 页 共 17 页3 K1 922 K5 903 K5 843 K8 80请用关系代数表达式表示下列查询语句:(1)检索“程军”老师所授课程的课程号(C#)和课程名(CNAME) 。(2)检索“李强”同学不学课程的课程号。(3)检索既选修了 K1 课程,也选修了 K5 课程的学生学号(S#) 。(4)检
7、索选修了课程表中的全部课程的学生姓名(SNAME) 。(5)检索选修课程名为“C 语言”的学生学号(S#)和姓名(SNAME ) 。3在关系中, “元数”(arity)是指( 列数 )(A ) 行数 (B) 元组个数 (C) 关系个数 (D ) 属性个数4在关系中, “基数”(cardinality)是指( 行数 )(A ) 列数 (B) 元组个数 (C) 关系个数 (D ) 属性个数5设 W = R S,且 W、R、S 的元组个数分别为 p、m、n,那么三者之间满足( D )(A ) p(m+n) (B) p(m+n )(C) p(mn) (D) p(mn)6下列式子中,不正确的是( D )
8、(A ) RS=R(RS) (B) R=(RS)(RS)(C) RS=S(SR) (D) RS = S(RS)7如果两个关系没有公共属性,那么其自然联接操作( A )ij第 6 页 共 17 页(A ) 转化为笛卡尔积操作 (B) 转化为联接操作(C) 转化为外部并操作 (D) 结果为空关系8.一个关系只有一个( D )(A) 、候选码 (B) 、外码 (C) 、超码 (D) 、主码9.下面的选项不是关系的基本特征( A )(A) 、不同的列有不同的数据类型 (B) 、不同的列有不同的列名(C) 、与行的次序无关 (D) 、与列的次序无关第三章 SQL 语言有两个基本表:表 EMP( ENO,
9、ENAME,SALARY,DNO)其属性分别表示职工的工号、姓名、工资和所在部门的编号表 DEPT(DNO,DNAME)其属性分别表示部门的编号和部门名1. 有一 SQL 语句:SELECT DNO,COUNT(DISTINCT ENO)FROM EMPGROUP BY DNO;该 SQL 语句实现了以下哪个功能?( C )(A) 统计职工的总人数(B ) 统计每一部门的职工人数(C) 统计职工服务的部门数目(D) 统计每一职工服务的部门数目2有一个 SQL 语句:SELECT ENO,ENAMEFROM EMPWHERE DNO NOT IN(SELECT DNOFROM DEPT第 7 页
10、 共 17 页WHERE DNAME=金工车间;其等价的关系代数表达式是:( C )(A) ENO,ENAME( DNAME 金工车间 (EMPDEPT)(B) ENO,ENAME(EMP DEPT)(C) ENO,ENAME(EMP) ENO,ENAME( DNAME=金工车间(EMPDEPT)(D) ENO,ENAME(EMP) ENO,ENAME( DNAME金工车间(EMP DEPT)3有一个 SQL 语句:UPDATE EMPSET SALARY=SALARY*1.05WHERE DNO=D6AND SALARYSOME (C) =ALL (D) ALL6. 下列关于索引的叙述,正确
11、的是( A ) 。(A) 、可以根据需要在基本表上建立一个或多个索引,从而提高系统的查询效率。(B) 、一个基本表最多只能有一个索引。DNAME 金工车间 第 8 页 共 17 页(C) 、建立索引的目的是为了给数据表中的元素指定别名,从而使别的表也可以引用这个元素。(D) 、一个基本表至少要存在一个索引。7. 下面列出的关于视图的条目中,不正确的是( C ) 。(A) 、视图是外模式(B) 、视图是虚表(C) 、使用视图可以加快查询语句的执行速度(D) 、使用视图可以简化查询语句的编写8. 设数据库中有三个关系:职工表 EMP(E#,ENAME,AGE,SEX ,ECITY) ,其属性分别表
12、示职工工号、姓名、年龄、性别和籍贯。工作表 WORKS(E#,C#,SALARY) ,其属性分别表示职工工号、工作的公司编号和工资。公司表 COMP(C#,CNAME,CITY) ,其属性分别表示公司编号、公司名称和公司所在城市。请写出完成下列操作的 SQL 语句: 用 CREATE TABLE 语句创建上述三个表,需定义出各表的主键和外键。 检索超过 50 岁的男职工的工号和姓名。 假设每个职工只能在一个公司工作,检索工资超过 1000 元的男性职工工号和姓名。 假设每个职工可在多个公司工作,检索在编号为 C4 和 C8 公司兼职的职工工号和姓名。 检索在“联华公司” 工作、工资超过 100
13、0 元的男性职工的工号和姓名。 假设每个职工可在多个公司工作,检索每个职工的兼职公司数目和工资总数,查询结果显示为(E#,NUM,SUM_SALARY) ,分别表示工号、兼职的公司数目和工资总数。 工号为 E6 的职工在多个公司工作,试检索至少在 E6 职工兼职的所有公司工作的职工工号。 检索联华公司中低于本公司平均工资的职工工号和姓名。 在每一公司中为 50 岁以上职工加薪 100 元(若职工为多个公司工作,可重复加) 。 在 EMP 表和 WORKS 表中删除年龄大于 60 岁的职工有关元组。解: CREATE TABLE EMP 第 9 页 共 17 页( E# CHAR(4) NOT
14、NULL, ENAME CHAR(8) NOT NULL, AGE SMALLINT, SEX CHAR(1), ECITY CHAR(20), PRIMARY KEY(E#);CREATE TABLE COMP ( C# CHAR(4) NOT NULL, CNAME CHAR(20) NOT NULL, CITY CHAR(20), PRIMARY KEY(C#); CREATE TABLE WORKS ( E# CHAR(4) NOT NULL, C# CHAR(4) NOT NULL, SALARY SMALLINT, PRIMARY KEY(E#, C#), FOREIGN KEY(
15、E#) REFERENCES EMP(E#), FOREIGN KEY(C#) REFERENCES COMP(C#); SELECT E#, ENAME FROM EMP WHERE AGE50 AND SEX=M; SELECT EMP.E#, ENAME FROM EMP, WORKS WHERE EMP.E#=WORKS.E# AND SALARY1000; SELECT A.E#, A.ENAME FROM EMP A, WORKS B, WORKS C WHERE A.E#=B.E# AND B.E#=C.E# AND B.C#=C4 AND C.C#=C8; SELECT A.E
16、#, A.ENAME FROM EMP A, WORKS B, COMP C WHERE A.E#=B.E# AND B.C#=C.C# AND CNAME=联华公司 AND SALARY1000 AND SEX=M; SELECT E#, COUNT(C#) AS NUM, SUM(SALARY) AS SUM_SALARY FROM WORKS GROUP BY E#; SELECT X.E# FROM WORKS X WHERE NOT EXISTS (SELECT * FROM WORKS Y WHERE E#=E6 AND NOT EXISTS (SELECT * FROM WORK
17、S Z WHERE Z.E#=X.E# AND Z.C#=Y.C#); SELECT A.E#, A.ENAME 第 10 页 共 17 页FROM EMP A, WORKS B, COMP C WHERE A.E#=B.E# AND B.C#=C.C# AND CNAME=联华公司 AND SALARY50);DELETE FROM WORKS WHERE E# IN (SELECT E# FROM EMP WHERE AGE60);DELETE FROM EMP WHERE AGE60; 第 11 页 共 17 页第四章 数据库安全性1以下( D )不属于实现数据库安全性的主要技术和方法。
18、(A ) 、存取控制技术 (B) 、视图技术(C) 、审计技术 (D) 、出入机房登记和加锁2把对关系 SC 的 GRADE 属性的修改权授予用户 ZHAO 的 SQL 语句是( C ) 。(A ) 、GRANT GRADE ON SC TO ZHAO(B ) 、GRANT UPDATE ON SC TO ZHAO(C) 、GRANT UPDATE(GRADE) ON SC TO ZHAO(D) 、GRANT UPDATE ON SC(GRADE) TO ZHAO3保护数据库、防止未经授权的或不合法的使用造成的数据泄露、更改破坏。这是数据库的( A ) 。(A) 、安全性 (B) 、完整性 (
19、C) 、并发控制 (D) 、恢复4今有两个关系模式:(1)职工(职工号,姓名,年龄,职务,工资,部门号) ,其中职工号为主码;部门号为外码;(2)部门(部门号,名称,经理名,地址,电话) ,其中部门号是主码;请用 SQL 语言的 GRANT 语句(加上视图机制)完成以下授权定义:用户杨兰具有 SELECT 每个部门的职工最高工资,最低工资,平均工资的权力,但他不能查看每个人的工资。CREATE VIEW 部门工资 ASSELECT 部门.名称,MAX(工资),MIN(工资),AVG(工资) FROM 职工, 部门WHERE 职工.部门号=部门. 部门号GROUP BY 职工.部门号 GRANT
20、 SELECT ON 部门工资TO 杨兰; 第 12 页 共 17 页第五章 数据库完整性1关于主码约束以下说法错误的是( C )A一个表中只能设置一个主码约束B允许空值的字段上不能定义主码约束C允许空值的字段上可以定义主码约束D可以将包含多个字段的字段组合设置为主码2在 SQL Server 中,可以使用( C )语句创建存储过程。ACreate Trigger BInstall ProcedureCCreate Procedure DCreate View3SQL Server 为每个触发器创建了两个临时表,它们是( B ) 。AUpdated 和 Deleted BInserted 和
21、Deleted CInserted 和 Updated DSeleted 和 Inserted4设有供应商关系 S 和零件关系 P,如下图所示,S 和 P 的主码分别是“供应商号”和“零件号” ,P 的外码是“供应商号 ”。分析下列 4 个操作能否被正确执行,并说明理由。(1)在 P 中插入元组(P2,白,A2)(2)在 P 中插入元组(NULL,绿,A1)(3)在 P 中插入元组(P4,白,A5)(4)在 P 中插入元组(P4,绿,A2)(1)不能正确执行,插入操作破坏了实体完整性约束,待插入的元组的“零件号”属性值“P2” ,在 P 表中已经存在。 “零件号”作为主键,其值不能重复,必须唯
22、一。 (2)不能正确执行,插入操作破坏了实体完整性约束,待插入的元组的“零件号”属性值为空, “零件号”作为主属性,其值不能为空。 (3)不能正确执行,插入操作破坏参照完整性约束,待插入的元组的“供应商号”属性值“A5” ,在 S 中找不到没有相应的主键值。 (4) 能正确执行,因为满足数据库的实体完整性和参照完整性。 第 13 页 共 17 页5假设有下面两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号) ,其中职工号为主码;部门号为外码。部门(部门号,名称,经理名,电话) ,其中部门号为主码,经理名为外码请用 SQL 语言定义这两个关系模式,要求在关系模式中完成以下完整性约束条件
23、的定义:(1)定义每个模式的主码;(2)定义参照完整性;职工关系模式中的部门号属性参照部门关系模式中的主码部门号;部门关系模式中的经理名属性参照职工关系模式中的姓名属性。(3)定义职工年龄不超过 60 岁。答: CREATE TABLE DEPT ( Deptno NUMBER(2), Deptname VARCHAR(10), Manager VARCHAR(10), PhoneNumber Char(12), CONSTRAINT PK_SC RIMARY KEY(Deptno) ); CREATE TABLE EMP ( Empno NUMBER(4),Ename VARCHAR(10)
24、, Age NUMBER(2) CONSTRAINT C1 CHECK ( Age日营业额 职工编号-部门编号 部门名-部门经理 R 的关键码为(职工编号,日期) (2)R 中有两个这样的 FD: (职工编号,日期)- ( 部门名,部门经理) 职工编号-(部门名,部门经理 ) 可见前一个 FD 是部分依赖,关系模式中存在非主属性对码的部分函数依赖,所以R 不是 2NF 模式。 R 应分解成 R1(职工编号,部门名,部门经理 ) R2(职工编号,日期,日营业额) 此处,R1 和 R2 都是 2NF。 (3)R2 已是 3NF 模式。 在 R1 中,存在两个 FD:职工编号-部门名 部门名-部门经
25、理 因此, “职工编号-部门经理”是一个传递依赖,R1 不是 3NF 模式。 R1 应分解成 R11(职工编号,部门名 ) R12(部门名,部门经理) 这样,=(R11,R12,R2)是一个 3NF 模式集 第 16 页 共 17 页第七章 数据库设计1. 数据库设计中,将 E-R 图转换成关系数据模型的过程属于( B )(A )、需求分析阶段 (B)、逻辑设计阶段(C)、概念设计阶段 (D)、物理设计阶段2. 数据库设计的概念设计阶段,表示概念结构的常用方法和描述工具是( C ) 。(A ) 、层次分析法和层次结构图 (B ) 、数据流程分析法和数据流程图(C) 、实体联系法和实体联系图(D
26、) 、结构分析法和模块结构图3. 在 E-R 模型向关系模型转换时,M:N 的联系转换为关系模式时,其关键字是( C ) 。(A ) 、M 端实体的关键字 (B) 、N 端实体的关键字(C) 、M,N 端实体的关键字组合 (D) 、重新选取其他属性4. 在 E-R 模型中,如果有 3 个不同的实体集,3 个 M:N 联系,根据 E-R 模型转换为关系模型的规则,转换为关系的数目是( C ) 。(A ) 、4 (B) 、5 (C) 、6 (D) 、75. 进行数据库系统需求分析时,数据字典的内容和作用是什么?答:数据字典是系统中各类数据描述的集合。数据字典的内容通常包括: ( l )数据项; (
27、 2 )数据结构; ( 3 )数据流; ( 4 )数据存储; ( 5 )处理过程五个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构。数据字典通过对数据项和数据结构的定义来描述数据流和数据存储 的逻辑内容。数据字典的作用:数据字典是关于数据库中数据的描述,在需求分析阶段建立,是下一步进行概念设计的基础,并在数据库设计过程中不断修改、充 实、完盖。6设某商业集团数据库中有三个实体集。一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。商店与商品间存在“销售”联系,
28、每个商店可销售多种商品,每种商品也可放在多个商店销售,每个商店销售一种商品,有月销售量;商店与职工间存在着“聘用”联系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和月薪。(1) 试画出 E-R 图,并在图上注明属性、联系的类型。(2) 将 E-R 图转换成关系模型,并注明主键和外键。第 17 页 共 17 页第 18 页 共 17 页第八章 数据库编程1 SQL 的集合处理方式与宿主语言单记录处理方式之间如何协调?由于 SQL 语句处理的是记录集合,而宿主语言语句一次只能处理一个记录,因此需要用游标(cousor)机制,把集合操作转换成单记录处理方式.2 SQL 有两种
29、使用方式:_ _交互式 SQL _和_ _嵌入式 SQL _。3 SQL 语句嵌入在 C 语言程序中时,必须加上前缀标识_EXEC SQL_和结束标志_ END_EXEC_。4 有关嵌入式 SQL 的叙述,不正确的是( B )A宿主语言是指 C 一类高级程序设计语言B宿主语言是指 SQL 语言C在程序中要区分 SQL 语句和宿主语言语句DSQL 有交互式和嵌入式两种使用方式5 嵌入式 SQL 实现时,采用预处理方式是( C )A把 SQL 语句和主语言语句区分开来B为 SQL 语句加前缀标识和结束标志C识别出 SQL 语句,并处理成函数调用形式D把 SQL 语句编译成二进制码6 允许在嵌入的
30、SQL 语句中,引用宿主语言的程序变量,在引用时( C )A直接引用B这些变量前必须加符号“*”C这些变量前必须加符号“:”D这些变量前必须加符号“&”7 如果嵌入的 SELECT 语句的查询结果肯定是单元组,那么嵌入时( C )A肯定不涉及游标机制B必须使用游标机制C是否使用游标,由应用程序员决定D是否使用游标,与 DBMS 有关第 19 页 共 17 页第九章 关系查询优化1为什么要对关系代数表达式进行优化?有哪三条启发式规则?对优化起什么作用?关系代数表达式由关系代数操作组合而成。操作中,笛卡尔积和连接操作最费时。如果直接按表达式书写的顺序执行,必将花费很多时间,并生成大量的中间结果,
31、效率较低。如果在执行前,由 DBMS 的查询子系统先对关系代数表达式进行优化,尽可能先执行选择和投影操作,则进行笛卡尔积或连接时可以减少中间结果,并 节省时间。 优化工作是由DBMS 做的,用户在写关系代数表达式时不必关心优化一事,仍以简练的形式书写。3 条启发式优化规则是:尽可能早地执行选择运算,尽可能早地执行投影运算,把笛卡尔积与附近的一连串选择和投影合并起来做。 使用这 3 条启发式优化规则,可以使计算时尽可能减少中间关系的数据量。2假设教学数据库中有 3 个关系:S(S#,SNAME,AGE,SEX)C(C#,CNAME,TEACHER)SC(S#,C#,GRADE)其中:学生关系 S
32、 的属性分别表示:学号、姓名、年龄、性别课程关系 C 的属性分别表示:课程号、课程名、任课教师选修关系 SC 的属性分别表示:学号、课程号、分数用户有一查询语句:检索女同学所选修的课程的课程名和任课教师。(1) 试写出该查询的关系代数表达式。(2) 画出查询表达式的语法树。(3) 使用启发式优化算法,对关系代数语法树进行优化,画出优化后的语法树。解: 关系代数表达式为: CNAME,TEACHER(SEX=F(SSC CT) ) 上述的关系代数表达式为: CNAME,TEACHER (SEX= F(L(S.S#=SC.S# SC.C#=C.C#(SSC) C) ) ) ) 此处 L 为 S、S
33、C、C 中全部属性(公共属性只取一次) 。上述关系代数表达式的语法树如图 2.2 所示。 第 20 页 共 17 页图 2.2 上述的关系代数表达式为: 优化后的语法树如图 2.3 所示。第 21 页 共 17 页图 2.3第 22 页 共 17 页第十章 数据库恢复技术1 数据库恢复的重要依据是( D )A数据库管理员 B数据字典C文档 D事务日志2 事务(transaction )是一个( C )A程序 B进程 C操作序列 D完整性规则3 一个事务的执行,要么全部完成,要么全部不做,一个事务中对数据库的所有操作都是一个不可分割的操作序列,这是事务的( A )A. 原子性 B. 一致性 C.
34、 独立性 D. 持久性4 在具有检查点的故障恢复技术中,下面哪个事务不需要 REDO( A )。(A) 、 T1 (B) 、T2 (C) 、T3 (D ) 、 T4Tc 检查点 Tf 系统故障T1T2T3T45 “检查点机制” 的主要思想是什么? COMMIT 语句与检查点时刻的操作如何协调?答:“检查点机制”的主要思想是在检查点时刻才真正做到把对 DB 的修改写第 23 页 共 17 页到磁盘。在 DB 恢复时,只有那些在最后一个检查点到故障点之间还在执行的事务才需要恢复。 事务在 COMMIT 时,事务对 DB 的更新已提交,但对 DB的更新可能还留在内存的缓冲区,在检查点时刻才真正写到磁
35、盘。因此事务的真正结束是在 COMMIT 后还要加上遇到检查点时刻。6 什么是 UNDO 操作和 REDO 操作?为什么要这样设置?答:undo 操作是反向扫描日志文件,撤销对数据库的更新操作,使数据库恢复到更新前的状态;Redo 操作正向扫描日志文件,重新做一次更新,使数据库恢复到更新后的状态。第 24 页 共 17 页第十一章 并发控制1 如果有 n 个事务串行调度,那么不同的有效调度有( D )A n2 B2 n C4 n D n!2 在事务依赖图中,如果两个事务的依赖关系形成一个循环,那么就会( B )A出现活锁现象 B出现死锁现象C事务执行成功 D事务执行失败3 如果事务 T 获得了
36、数据项 Q 上的排他锁,则 T 对 Q( C )A只能读不能写B只能写不能读C既可读又可写D不能读也不能写4 设事务 T1 和 T2 对数据库中的数据 A 进行操作,可能有如下几种情况,请问哪一种不会发生冲突操作( D )A. T1 正在写 A,T2 要读 A B. T1 正在写 A,T2 也要写 AC. T1 正在读 A,T2 要写 AD. T1 正在读 A,T2 也要读 A5 试叙述“串行调度”与“可串行化调度”的区别。串行调度是多个事务按照一定的次序依次执行;在某一时刻只有一个事务在执行。 而可串行化调度是并发调度中的一个概念。在并发调度中,某一时刻有多个事务同时被处理。 如果某事务集的一个并发调度的结果与某个串行调度等价, 则称此并发调度是是可串行化调度。6 假设某航班某日有余票 50 张,甲预定 10 张,乙预定 20 张,现按如下顺序进行调度,请问会出现什么问题?如何来实现并发控制?第 25 页 共 17 页参考答案: 按上述顺序进行调度,则最后的余票为 30,显然不正确了。因为正确答案应该为 20,这种错误属于“ 丢失修改” ,即把甲写回的数据丢失了。应该采用封锁机制实现并发控制,具体修改如下: