第一章 绪论
客观题:
1.数据库系统是采用了数据库技术的计算机系统,数据库系统由数据库、数据库管理系统、应用系统和(C ) 。A.系统分析员      B.程序员     C.数据库管理员    D.操作员 
2.数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是(A )。 
A. DBS包括DB和DBMS     B .DBMS包括DB和DBS 
C. DB包括DBS和DBMS     D .DBS就是DB,也就是DBMS 
3.下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是(D )。 
I.人工管理阶段 II.文件系统阶段 III.数据库阶段 
 A.I 和 II    B.只有 II     C.II 和 III     D.只有 I 
4.下列四项中,不属于数据库系统特点的是( C) 。p10 
 A.数据共享   B.数据完整性   C.数据冗余度高   D.数据独立性高 
5.数据库系统的数据独立性体现在(B ) 。 p10
  A.不会因为数据的变化而影响到应用程序 
  B.不会因为数据存储结构与数据逻辑结构的变化而影响应用程序 
  C.不会因为存储策略的变化而影响存储结构 
  D.不会因为某些存储结构的变化而影响其他的存储结构 
6.描述数据库全体数据的全局逻辑结构和特性的是(A ) 。 
  A.模式   B.内模式   C.外模式 
7.要保证数据库的数据独立性,需要修改的是(C ) 。 
  A.模式与外模式    B.模式与内模式   C.三级模式之间的两层映射   D.三层模式 
8.要保证数据库的逻辑数据独立性,需要修改的是(A ) 。 
A.模式与外模式之间的映射  B.模式与内模式之间的映射  C.模式  D.三级模式 
9.用户或应用程序看到的那部分局部逻辑结构和特征的描述是( C)模式。 
  A.模式  B.物理模式  C.子模式  D.内模式 
10.下述(D )不是DBA数据库管理员的职责 。 
  A.完整性约束说明  B.定义数据库模式  C.数据库安全  D.数据库管理系统设计 
11.概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是(D ) 。 
 A.层次模型  B.关系模型  C.网状模型  D.实体-关系模型 
12.区分不同实体的依据是(B ) 。 
 A.名称  B.属性  C.对象  D.概念 
13.关系数据模型是目前最重要的一种数据模型,它的三个要素分别是(B )。 
  A.实体完整性、参照完整性、用户自定义完整性   B.数据结构、关系操作、完整性约束 
 C.数据增加、数据修改、数据查询               D.外模式、模式、内模式 
14.(B )的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。 
A.网状模型  B.关系模型  C.层次模型  D.以上都有
主观题:
1 .数据库数据具有_共享性高__、_____冗余度低_____和___易扩充_______三个基本特点。参见定义p11
2 .试述数据库、数据库管理系统、数据库系统的概念。P5
3 .数据库管理系统是数据库系统的一个重要组成部分,它的功能包括__、__、___、_ P5。
4 .数据库系统是指在计算机系统中引入数据库后的系统,一般由__________、__________、__________和__________构成。P5
5 .数据库管理技术的发展是与计算机技术及其应用的发展联系在一起的,它经历了三个阶段:__________阶段,__________阶段和__________阶段。P6
6 .数据库具有数据结构化、最小的__________、较高的__________等特点 。P10
7 .试述数据库系统的特点。P8
8 .DBMS还必须提供_______保护、_______检查、________、________等数据控制功能。P11
9 .数据库管理系统的主要功能有哪些?P5
10 .模式(Schema)是数据库中全体数据的__________和__________的描述,它仅仅涉及到__________的描述,不涉及到具体的值。P31
11 .三级模式之间的两层映象保证了数据库系统中的数据能够具有较高的_____和____。P33
12 .根据模型应用的不同目的,可以将这些模型划分为两类,它们分别属于两个不同的层次。第一类是__________,第二类是__________。P12
13 .数据模型的三要素是指__________,__________,__________。P13实际数据库系统中所支持的主要数据模型是__________,__________,__________。(逻辑模型)p12
14 .数据模型中的__________是对数据系统的静态特征描述,包括数据结构和数据间联系的描述,__________是对数据库系统的动态特征描述,是一组定义在数据上的操作,包括操作的涵义、操作符、运算规则及其语言等。P13~14
17 .__________是目前最常用也是最重要的一种数据模型。采用该模型作为数据的组织方式的数据库系统称为__________。P28
18.关系的完整性约束条件包括三大类:__________、__________和__________。P30
19 .什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性? 为什么数据库系统具有数据与程序的独立性?P34
20 DBA的职责是什么?P35
21.教材P38  12  13
第二章  关系数据库
1.下面的选项不是关系数据库基本特征的是(A)。
A.不同的列应有不同的数据类型  B.不同的列应有不同的列名
C.与行的次序无关   D.与列的次序无关
2.一个关系只有一个(D)。
A.候选码 B.外码 C.超码 D.主码
3.关系模型中,一个码是(C)。
A.可以由多个任意属性组成    B.至多由一个属性组成
C.由一个或多个属性组成,其值能够惟一标识关系中一个元组   D.以上都不是
4.现有如下关系:患者(患者编号,患者姓名,性别,出生日期,所在单位)医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果)其中,医疗关系中的外码是(A)。
A.患者编号B.患者姓名C.患者编号和患者姓名D.医生编号和患者编号
5.关系代数运算是以(C)为基础的运算。
A.关系运算B.谓词演算C.集合运算D.代数运算
6.关系数据库管理系统应能实现的专门关系运算包括(B)。
A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表
7.五种基本关系代数运算是(A)。
A.∪-×σπ   B.∪-σπ   C.∪∩×σπ   D.∪∩σπ
8.关系数据库中的投影操作是指从关系中(B)。
A.抽出特定记录B.抽出特定字段C.建立相应的影像D.建立相应的图形
9.从一个数据库文件中取出满足某个条件的所有记录形成一个新的数据库文件的操作是(C)。 A.投影B.连接C.选择D.复制
10.关系代数中的连接操作是由(B)操作组合而成。
A.选择和投影B.选择和笛卡尔积C.投影、选择、笛卡尔积D.投影和笛卡尔积
11.一般情况下,当对关系R和S进行自然连接时,要求R和S含有一个或者多个共有的(C)。
A.记录B.行C.属性D.元组
12.假设有关系R和S,关系代数表达式R-(R-S)表示的是(A)。
A.R∩S   B.R∪S   C.R-S   D.R×S
主观题:
1.叙述关系模型的三个组成部分。P47
2.关系数据模型中,二维表的列称为____属性___,二维表的行称为____元组___。
3.用户选作元组标识的一个候选码为________,其属性不能取________。P44
5.定义并理解下列术语:
关系,主码,外部码
5.关系代数运算中,传统的集合运算有_____,_____,_____,_____。P52
6.试述关系模型的完整性规则。P49~51
7.关系代数运算中,基本的运算是________,________,_______,_______,_______。P60
8.等值连接与自然连接的区别是什么?P57
9.关系代数运算中,专门的关系运算有________,________,________。P52
10.关系代数中,从两个关系中找出相同元组的运算称为________运算。
11.已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主码是________,系关系的外码是________,学生关系的主码是________,学生关系的外码是________。
12.用关系代数实现下列查询:
(1)查询所有计算系的学生信息。
(2)查询年龄小于18岁的学生学号和姓名。
(3)查询选修1号课程的学生学号和姓名。
(4)查询选修数据库原理的学生学号。
(5)查询选修数据库原理的学生姓名。
(6)查询选修数据库原理的学生姓名和成绩。
(7)查询至少选修1号和3号课程的学生学号和姓名。
(8)查询全部课程的学生学号和姓名。
第3章关系数据库标准语言SQL
1.SQL语言是(  )的语言,容易学习。 B
A.过程化  B.非过程化  C.格式化  D.导航式
2.在视图上不能完成的操作是()。C
A.更新视图  B.查询  C.在视图上定义新的表  D.在视图上定义新的视图
3.SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中,CREATE、DROP、ALTER语句是实现哪种功能(  )。C
A.数据查询  B.数据操纵  C.数据定义   D.数据控制
4.SQL语言中,删除一个视图的命令是()。B
A.DELETE  B.DROP  C.CLEAR  D.REMOVE
5.在SQL语言中的视图VIEW是数据库的()。A
A.外模式  B.模式  C.内模式  D.存储模式
6.下列的SQL语句中,()不是数据定义语句。D
A.CREATE TABLE  B.DROP VIEW  C.CREATE VIEW  D.GRANT
7.若要撤销数据库中已经存在的表S,可用(  )。C
A.DELETETABLES  B.DELETES  C.DROPTABLES  D.DROPS
8.若要在基本表S中增加一列CN(课程名),可用()。C
MS Server中 :alter  table  s  add char (8)
A.ADD TABLE(CNCHAR(8))        B.ADD TABLE  ALTER(CNCHAR(8))
C.ALTER TABLE  S  ADD(CNCHAR(8))  D.ALTER TABLE(ADD CN CHAR(8))
9.学生关系模式S(S#,Sname,Sex,Age),S的属性分别表示学生的学号、姓名、性别、年龄。要在表S中删除一个属性“年龄”,可选用的SQL语句是( )。B
A.  DELETE Age from S    B.  ALTER TABLE S DROP Age
C.  UPDATE S Age         D.  ALTER TABLE S  Age
10.有关系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE)。其中S#是学生号,SNAME是学生姓名,SAGE是学生年龄,C#是课程号,CNAME是课程名称。要查询选修“ACCESS”课的年龄不小于20的全体学生姓名的SQL语句是
SELECT SNAME  FROM  S,C,SC   WHERE子句。这里的WHERE子句的内容是(A)。
A.  S.S#=SC.S# and C.C#=SC.C# and SAGE>=20   and   CNAME=‘ACCESS’
B. S.S#=SC.S# and C.C#=SC.C# and SAGE in  20  and  CNAME  in  ‘ACCESS’
C. SAGE>=20  and  CNAME=’ACCESS’
11.设关系数据库中一个表S的结构为S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值范围0-100。若要把“张二的化学成绩80分”插入S中,则可用( )。D
A.  ADD  INTO  S  VALUES(’张二’,’化学’,’80’)
B.  INSERT  INTO  S  VALUES(’张二’,’化学’,’80’)
C.  ADD  INTO  S  VALUES(’张二’,’化学’,80)
D.  INSERT  INTO  S  VALUES(’张二’,’化学’,80)
12.设关系数据库中一个表S的结构为:S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值范围0-100。若要更正王二的化学成绩为85分,则可用( )。A
A.  UPDATE  S  SET  grade=85  WHERE  SN=’王二’AND  CN=’化学’
B.  UPDATE  S  SET  grade=’85’WHERE  SN=’王二’AND  CN=’化学’
C.  UPDATE  grade=85  WHERE  SN=’王二’AND  CN=’化学’
D.UPDATE  grade=’85’  WHERE  SN=’王二’AND  CN=’化学’
13.在SQL语言中,子查询是()。D
A.返回单表中数据子集的查询语言  B.选取多表中字段子集的查询语句
C.选取单表中字段子集的查询语句  D.嵌入到另一个查询语句之中的查询语句
14.有关系S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#,GRADE)。其中S#是学生号,SNAME是学生姓名,SEX是性别,C#是课程号,CNAME是课程名称。要查询选修“数据库”课的全体男生姓名的SQL语句是SELECT  SNAME  FROM  S,C,SC  WHERE子句。这里的WHERE子句的内容是()A
A.  S.S#=SC.S#  and  C.C#=SC.C#  and  SEX=’男’and  CNAME=’数据库’
B.  S.S#=SC.S#  and  C.C#=SC.C#  and  SEX  in’男’and  CNAME  in  ’数据库’
C.  SEX  ’男’and  CNAME ’数据库’
D.  S.SEX=’男’ and  CNAME=’数据库’
15.若用如下的SQL语句创建了一个表SC:
CREATE TABLE SC(S# CHAR(6)NOT NULL,C#  CHAR(3)NOT  NULL,SCORE
INTEGER,NOTE CHAR(20));
向SC表插入如下行时,(  )行可以被插入。B
A.(’201009’,’111’,60,必修)
B.(’200823’,’101’,NULL,NULL)
C.(NULL,’103’,80,’选修’)
D.(’201132’,NULL,86,’’)
16.假设学生关系S(S#,SNAME,SEX),课程关系C(C#,CNAME),学生选课关系SC(S#,C#,GRADE)。要查询选修“Computer”课的男生姓名,将涉及到关系(D )
A.  S   B.  S,SC      C.  C,SC      D.  S,C,SC
主观题:
1.SQL的中文全称是_________Structed Query Language。P78
2.SQL语言除了具有数据查询和数据操纵功能之外,还具有________和________的功能,它是一个综合性的功能强大的语言。P79
3.在关系数据库标准语言SQL中,实现数据检索的语句命令是________。
4.用SQL语句建立第2章习题5中的四个表。
5.在SQL语言的结构中,________有对应的物理存储,而_______没有对应的物理存储。P81
6.针对上题中建立的四个表试用SQL语言完成第2章习题5中的查询。
(1)求供应工程J1零件的供应商号码SNO; 
(2)求供应工程J1零件P1的供应商号码SNO; 
(3)求供应工程J1零件为红色的供应商号码SNO;
(4)求没有使用天津供应商生产的红色零件的工程号JNO;
7.针对习题3中的四个表试用SQL语言完成以下各项操作:
(1)找出所有供应商的姓名和所在城市。
(2)找出所有零件的名称、颜色、重量。
(3)找出使用供应商S1所供应零件的工程号码。
(4)找出工程项目J2使用的各种零件的名称及其数量。
(5)找出上海厂商供应的所有零件号码。
(6)找出使用上海产的零件的工程名称。
(7)找出没有使用天津产的零件的工程号码。
(8)把全部红色零件的颜色改成蓝色。
(9)由S5供给J4的零件P6改为由S3供应,请作必要的修改。
8.关系R(A,B,C)和S(A,D,E,F),R和S有相同属性A,若将关系代数表达式:πR.A,R.B,S.D,S.F(R∞S)用SQL语言的查询语句表示,则为:SELECT  R.A,R.B,S.D,S.F  FROM  R,S  WHERE________________。
9.什么是基本表?什么是视图?P81 
10.视图是从________中导出的表,数据库中实际存放的是视图的________。P118
11.试述视图的优点。P125
12.设有如下关系表R、S、T:
R(BH,XM,XB,DWH)
S(DWH,DWM)
T(BH,XM,XB,DWH)
(1)实现R∪T的SQL语句是                                          。
(2)实现σDWH=’100’?的SQL语句是                                  。
(3)实现πXM,XB?的SQL语句是                                         。
(4)实现πXM,DWH(σXB=’女’?)的SQL语句是                           。
(5)实现R∞S的SQL语句是                                           。
(6)实现πXM,XB,DWH(σXB=’男’(R∞S))的SQL语句是                    。
13.写出完成如下操作的SQL语句
(1)查询所有计算系的学生信息。
(2)查询年龄小于18岁的学生学号和姓名。
(3)查询选修1号课程的学生学号和姓名。
(4)查询选修数据库原理的学生学号。
(5)查询选修数据库原理的学生姓名。
(6)查询选修数据库原理的学生姓名和成绩。
(7)插入一个记录(25,“李明”,“男”,21,“95031”); 
(8)插入“95031”班学号为30,姓名为“郑和”的学生记录;
(9)将学号为10的学生姓名改为“王华”;
(10)将所有“95101”班号改为“95091”;
(11)删除学号为20的学生记录;
(12)删除姓“王”的学生记录; 
(13)创建计算机系学生视图; 
14.请为三建工程项目建立一个供应情况的视图,包括供应商代码(SNO)、零件代码(PNO)、供应数量(QTY)。针对该视图完成下列查询:
(1)找出三建工程项目使用的各种零件代码及其数量。(2)找出供应商S1的供应情况。
第4章 数据库安全性
1.以下(D )不属于实现数据库系统安全性的主要技术和方法。 
 A.存取控制技术  B.视图技术  C.审计技术  D.出入机房登记和加防盗门 
2.SQL中的视图机制提高了数据库系统的(D )。 
 A.完整性  B.并发控制  C.隔离性  D.安全性 
3.SQL语言的GRANT和REVOKE语句主要是用来维护数据库的(C )。 
 A.完整性  B.可靠性  C.安全性  D.一致性 
4.在数据库的安全性控制中,授权的数据对象的(A ),授权子系统就越灵活。 
 A.范围越小  B.约束越细致  C.范围越大  D.约束范围大 
5 什么是数据库的安全性? P130
6._用户权限定义和合法权检查机制一起组成了DBMS的安全子系统。 
7 试述实现数据库安全性控制的常用方法和技术。P135
8 . 用户权限是由两个要素组成的:________ 和 ________ 。P137 
9 . 什么是数据库中的自主存取控制方法和强制存取控制方法?P136,P143
10 . 在数据库系统中,定义存取权限称为________ 。SQL语言用________语句向用户授予对数据的操作权限,用________语句收回授予的权限。 P137
11 . 对数据库模式的授权由DBA在________ 时实现。P137 
17 . 理解并解释MAC机制中主体、客体、敏感度标记的含义。 
18 . 什么是数据库的审计功能,为什么要提供审计功能?P145 
19 . 通过________ 可以把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。P144
第5章 数据库完整性
1.完整性检查和控制的防范对象是(AC ),防止它们进入数据库。安全性控制的防范对象是(BD ),防止他们对数据库数据的存取。 
 A.不合语义的数据  B.非法用户  C.不正确的数据  D.非法操作 
2.找出下面SQL命令中的数据控制命令(A )。 
 A.GRANT  B.COMMIT  C.UPDATE  D.SELECT 
3.下述SQL命令中,允许用户定义新关系时,引用其他关系的主码作为外码的是( C)。 
 A.INSERT  B.DELETE  C.REFERENCES  D. SELECT 
4.下述SQL命令的短语中,定义属性上约束条件的是(ABC )。 
 A.NOT NULL短语  B.UNIQUE短语  C.CHECK短语  D.HAVING短语 
5 . 数据库的完整性是指数据的________ 和 ________。P151
6 . 数据库的完整性概念与数据库的安全性概念有什么区别和联系?P151 
6 . 什么是数据库的完整性约束条件?可分为哪几类?P152~158 
7 . DBMS的完整性控制机制应具有哪些功能? P151
第6-7章
1.规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足:每一个属性都是(B)。
A.长度不变的  B.不可分解的   C.互相关联的   D.互不相关的
2.已知关系模式R(A,B,C,D,E)及其上的函数依赖集合F={A→D,B→C,E→A},该关系模式的候选码是(B)。
A.  AB    B. BE     C. CD     D . DE
3.关系模式中,满足2NF的模式(B)。
A.可能是1NF   B.必定是1NF   C.必定是3NF    D.必定是BCNF
4.关系模式R中的属性全是主属性,则R的最高范式必定是(C)。答案d
A.1NF    B.2NF    C.3NF    D.BCNF
5.消除了部分函数依赖的1NF的关系模式,必定是(B)。
A.1NF    B.2NF   C.3NF    D.BCNF
6.关系模式的候选码可以有1个或多个,而主码有(C)。
A.多个   B.0个   C.1个   D.1个或多个
7.候选码的属性可以有(D)。
A.多个   B.0个   C.1个   D.1个或多个
8.设U是所有属性的集合,X、Y、Z都是U的子集,且Z=U-X-Y。下面关于多值依赖的叙述中,不正确的是()。多值依赖,不考
A.若X→→Y,则X→→Z                B.若X→Y,则X→→Y
C.若X→→Y,且Y′∈Y,则X→→Y′   D.若Z=Φ,则X→→Y
9.关系数据库规范化是为了解决关系数据库中(B)的问题而引入的。
A.提高查询速度   B.插入、删除异常和数据冗余   C.保证数据的安全性和完整性
10.关系的规范化中,各个范式之间的关系是(B)。
A.  1NF∈2NF∈3NF     B .3NF∈2NF∈1NF  
  C. 1NF=2NF=3NF        D. 1NF∈2NF∈BCNF∈3NF
11.学生表(id,name,sex,age,depart_id,depart_name),存在的函数依赖是id→{name,sex,age,depart_id};dept_id→dept_name,其满足(B)。
A.1NF   B.2NF   C.3NF   D.BCNF
12.设有关系模式R(S,D,M),其函数依赖集:F={S→D,D→M},则关系模式R的规范化程度最高达到(B)。
A.1NF   B.2NF   C.3NF   D.BCNF
13.设有关系模式R(A,B,C,D),其数据依赖集:F={(A,B)→C,C→D},则关系模式R的规范化程度最高达到( B)。
A.1NF   B.2NF   C.3NF    D.BCNF
14.X→Y,当下列哪一条成立时,称为平凡的函数依赖(B)。不严密
A.X∈Y    B.Y∈X    C.X∩Y=Φ   D.X∩Y≠Φ
15.在关系模式R(A,B,C,D)中,存在函数依赖关系{A→B,A→C,A→D,(B,C)→A},则候选码是___A或BC__,关系模式R(A,B,C,D)属于___3NF__ (答案2nf)
16在关系模式R(D,E,G)中,存在函数依赖关系{E→D,(D,G)→E},则候选码是DG或EG__,关系模式R(D,E,G)属于__3NF_____。 
主观题:
1.给出关系系统的定义。
2.理解并给出下列术语的定义:函数依赖、部分函数依赖、完全函数依赖、传递依赖、候选码、主码、外码、全码(All-key)、1NF、2NF、3NF、BCNF、多值依赖、4NF。
3.设某汽车运输公司数据库中有3个实体集。
描述车队的信息有:车队号,车队名。
描述车辆的信息有:牌照号,厂家,出厂日期。
描述司机的信息有:司机编号,姓名,电话。
有关语义如下:
每个车队可聘用若干司机,但每个司机只能应聘于一个车队,车队聘用司机有个聘用期;每个车队可拥有若干车辆,但每辆车只能属于一个车队;每个司机可使用多辆汽车,每辆汽车可被多个司机使用,司机使用车辆有使用日期和公里数。
(1).试画出E—R图。
(2).将E—R图转换成关系模型,并指出每个关系模式的主码、外码。
(3).对关系模式进行分析并进行分解,使之3NF满足的要求。
第8章数据库编程
16.在嵌入式SQL中是如何区分SQL语句和主语言语句的?p238
17.在嵌入式SQL中是如何解决数据库工作单元与源程序工作单元之间通信的?p238 
第10章
1.一个事务的执行,要么全部完成,要么全部不做,一个事务中对数据库的所有操作都是一个不可分割的操作序列的属性是(A )。 
 A.原子性  B.一致性  C.独立性  D.持久性 
2.表示两个或多个事务可以同时运行而不互相影响的是(C )。 
 A.原子性  B.一致性  C.独立性  D.持久性 
3.事务的持续性是指( B) 
 A. 事务中包括的所有操作要么都做,要么都不做 
 B. 事务一旦提交,对数据库的改变是永久的 
 C. 一个事务内部的操作对并发的其他事务是隔离的 
 D. 事务必须使数据库从一个一致性状态变到另一个一致性状态 
4.SQL语言中的COMMIT语句的主要作用是( C)。 
 A.结束程序  B.返回系统  C.提交事务  D.存储数据 
5.SQL语言中用(B)语句实现事务的回滚 
 A.CREATE  TABLE      B.ROLLBACK  C.GRANT和REVOKE    D.COMMIT 
6.若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情况称为()。 A
 A.介质故障  B.运行故障  C.系统故障  D.事务故障 
7.在DBMS中实现事务持久性的子系统是(D )。 
 A.安全管理子系统  B.完整性管理子系统  C.并发控制子系统  D.恢复管理子系统 
8.后援副本的作用是(C )。 
 A.保障安全性  B.一致性控制  C.故障后的恢复  D.数据的转储 
9.事务日志用于保存(C )。 
 A.程序运行过程  B.程序的执行结果  C.对数据的更新操作  D.对数据的查询操作 
10.数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括(C )。 
 A.数据字典、应用程序、数据库后备副本  B.数据字典、应用程序、审计档案 
 C.日志文件、数据库后备副本  D.数据字典、应用程序、日志文件 
10 .________ 是一系列的数据库操作,是数据库应用程序的基本逻辑单元。P278 
11.事务处理技术主要包括________ 技术和________技术。 P278
12.事务具有四个特性:它们是_____ 、_____ 、_____ 和 ____ 。简称为_______特性。P279
13.把数据库从错误状态恢复到某一已知的正确状态的功能,这就是             P280
14. 建立冗余数据最常用的技术是________ 和________ 。通常在一个数据库系统中,这两种方法是一起使用的。P282
主观题:
1.事务的概念及事务的四个特性。
2 数据库运行中可能产生的故障有哪几类?哪些故障影响事务的正常执行?哪些故障破坏数据库数据? P280
3. 数据库恢复的基本技术有哪些?P282
4 .什么是日志文件?为什么要设立日志文件?P283
5 .登记日志文件时为什么必须先写日志文件,后写数据库? P284
6.针对不同的故障,试给出恢复的策略和方法。(即如何进行事务故障的恢复?系统故障的恢复?介质故障恢复?) P285
7 .什么是检查点记录,检查点记录包括哪些内容? P286
第11章
1.解决并发操作带来的数据不一致问题普遍采用(A )技术。 
 A.封锁B.存取控制C.恢复D.协商 
2.下列不属于并发操作带来的问题是(C )。 
 A.丢失修改B.不可重复读C.死锁D.脏读 
3.DBMS普遍采用(C )方法来保证调度的正确性 。 
 A.索引B.授权C.封锁D.日志 
4.事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放,这是( ) 。 B
 A.一级封锁协议B.二级封锁协议C.三级封锁协议D.零级封锁协议 
5.如果事务T获得了数据项Q上的排他锁,则T对Q(C ) 。 
 A.只能读不能写B.只能写不能读C.既可读又可写D.不能读也不能写 
6.设事务T1和T2,对数据库中的数据A进行操作,可能有如下几种情况,请问哪一种不会发生冲突操作( D) 。 
 A.T1正在写A,T2要读A B.T1正在写A,T2也要写A 
 C.T1正在读A,T2要写A D.T1正在读A,T2也要读A 
7.如果有两个事务,同时对数据库中同一数据进行操作,不会引起冲突的操作是(D ) 。 
 A.一个是DELETE,一个是SELECT B.一个是SELECT,一个是DELETE 
 C.两个都是UPDATE D.两个都是SELECT
8 . 并发操作带来的数据不一致性包括:________ 、________ 和 ________ 。P293
9.多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行它们时的结果相同,我们称这种调度策略为________的调度。P299
10 . 基本的封锁类型有两种:________ 和________ 。P295
11 . 在数据库并发控制中,两个或多个事务同时处在相互等待状态,称为________ 。 P297
主观题:
1 .在数据库中为什么要并发控制?P292 
2 .并发操作可能会产生哪几类数据不一致?用什么方法能避免各种不一致的情况?P293,P295
3 .什么是封锁?P295
4 .基本的封锁类型有几种?试述它们的含义。P295
5 .什么是封锁协议?不同级别的封锁协议的主要区别是什么?P301
6 .不同封锁协议与系统一致性级别的关系是什么?
7 .什么是活锁?什么是死锁 ? P296
8 .请给出预防死锁的若干方法。P294
9 .什么样的并发调度是正确的调度?P299
10 .试述两段锁协议的概念。P301





答案
第1章
1.永久存储 有组织 可共享
2.略
3.数据定义功能 数据操纵功能 数据库的运行管理 数据库的建立和维护功能
4.数据库 数据库管理系统(及其开发工具) 应用系统 数据库管理员
5.人工管理 文件系统 数据库系统
6.冗余度 数据独立性
7.数据结构化、数据的共享性高,冗余度低,易扩充、数据独立性高、数据由DBMS统一管理和控制
8.数据的安全性 数据的完整性 并发控制 数据库恢复
9.① 数据库定义功能; ② 数据存取功能; ③ 数据库运行管理; ④ 数据库的建立和维护功能。
10.逻辑结构 特征 型
11.逻辑独立性 物理独立性
12.概念模型 数据模型
13.数据结构 数据操作 完整性约束 关系模型 层次模型 网状模型
14.数据结构 数据操作
15.关系模型 关系数据库系统
16.实体完整性 参照完整性 用户定义的完整性
17.数据与程序的逻辑独立性:当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映象作相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。 数据与程序的物理独立性:当数据库的存储结构改变了,由数据库管理员对模式/内模式映象作相应改变,可以使模式保持不变,从而应用程序也不必改变。保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间提供的两层映象保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
18.负责全面地管理和控制数据库系统。具体职责包括: ① 决定数据库的信息内容和结构; ② 决定数据库的存储结构和存取策略; ③ 定义数据的安全性要求和完整性约束条件; ④ 监督和控制数据库的试用和运行; ⑤ 数据库系统的改进和重组。
第2章
1.关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。
2.属性记录或元组
3.主码   空值
4.关系:在域D1,D2,…,Dn上笛卡尔积D1×D2×…×Dn的子集称为关系,表示为R(D1,D2,…,Dn).
主码:若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码,若一个关系有多个候选码,则选定其中一个为主码(Primarykey)。
外部码:设F是基本关系R的一个或一组属性,但不是关系R的码,如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外部码(Foreignkey),简称外码。
5.笛卡尔积并交差
6.关系模型的完整性规则是对关系的某种约束条件。关系模型中可以有三类完整性约束:实体完整性、参照完整性和用户定义的完整性
1)实体完整性规则:若属性A是基本关系R的主属性,则属性A不能取空值。
2)参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值);或者等于S中某个元组的主码值。
3)用户定义的完整性是针对某一具体关系数据库的约束条件。它反映某一具体应用所涉及的数据必须满足的语义要求。
7.并差笛卡尔积选择投影
8.等值连接是从关系R与S的笛卡尔积中选取A、B属性值相等的那些元组。即等值连接为:
RA=BS={trts|tr∈R∧ts∈S∧tr[A]=ts[B]}
自然连接(Natural  join)是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且要在结果中把重复的属性去掉。即若R和S具有相同的属性组B,则自然连接可记作:RS={trts|tr∈R∧ts∈S∧tr[B]=ts[B]}
9.选择、投影、连接、除
10.交
11. 系编号 没有 学号  系编号
12.
第3章
1.结构化查询语言
2.数据定义数据控制
3.SELECT
4.建S表:
CREATETABLE  S(SNOCHAR(3),SNAMECHAR(10),STATUSCHAR(2),
CITYCHAR(10));P(PNO,PNAME,COLOR,WEIGHT);
建P表:
CREATETABLEP(PNOCHAR(3),PNAMECHAR(10),COLORCHAR(4),WEIGHTINT);J(JNO,JNAME,CITY);
建J表:
CREATETABLEJ(JNOCHAR(3),JNAMECHAR(10),CITYCHAR(10));SPJ(SNO,PNO,JNO,QTY);
建SPJ表:
CREATETABLESPJ(SNOCHAR(3),PNOCHAR(3),JNO  CHAR(3),QTYINT);
5.基本表  视图
6.(1)SELECT  SNO  FROM  SPJ  WHERE  JNO=‘J1’;
(2)SELECT  SNO  FROM  SPJ   WHERE  JNO=‘J1’AND  PNO=‘P1’;
(3)(嵌套)SELECT  SNO  FROM   SPJ   WHERE   JNO=‘J1’  AND  PNO  IN
 (SELECT  PNO  FROM  P   WHERECOLOR=‘红’);
或(复合条件连接查询)
SELECT  SNO  FROM  SPJ,P 
WHERE JNO=‘J1’AND  SPJ.PNO=P.PNO  AND  COLOR=‘红’;
(4)求没有使用天津供应商生产的红色零件的工程号JNO;
SELECT  JNO  FROM  J WHERE  NOT  EXISTS  (
SELECT  *   FROM  SPJ  WHERE  SPJ.JNO=J.JNO AND SNO  IN
 (SELECT  SNO  FROM  S   WHERE CITY=‘天津’)
AND  PNO   IN   (SELECT   PNO  FROM  P  WHERE COLOR=‘红’));或
SELECT  JNO  FROM   J
WHERE  NOT  EXISTS (SELECT  *   FROM  SPJ, S, P  
WHERE  SPJ.JNO=J.JNO  AND  SPJ.SNO=S.SNO  AND
SPJ.PNO=P.PNO  AND  S.CITY=‘天津’AND   P.COLOR=‘红’);
7. (1) SELECTSNAME,CITY  FROM  S;
(2) SELECT PNAME,COLOR,WEIGHT  FROM  P;
(3) SELECT  JNO  FROM  SPJ   WHERE  SNO=‘S1’;
(4)SELECT  P.PNAME,SPJ.QTY  FROM  P,SPJ 
 WHERE  P.PNO=SPJ.PNO  AND  SPJ.JNO='J2';
(5)SELECT  DISTINCT PNO  FROM  SPJ
WHERE  SNO  IN(SELECT  SNO  FROM  S  WHERE  CITY='上海');
(6)SELECT  JNAME  FROM  J,SPJ,S 
WHERE J.JNO=SPJ.JNO  AND SPJ.SNO=S.SNO  AND  S.CITY='上海';
或
SELECT  JNAME  FROM   J  
WHERE  JNOIN   in  
(SELECT JNO  FROM  SPJ,S  WHERE SPJ. SNO=S.SNO AND S.CITY='上海');
(7) SELECT  JNO  FROM  J  WHERE  NOT  EXISTS
(SELECT  *  FROM   SPJ  
 WHERE  SPJ.JNO=J.JNO  AND  SNO  IN
(SELECT  SNO  FROM  S  WHERE  CITY=‘天津’));
或
SELECT  JNO  FROM  J  WHERE  NOT  EXISTS
(SELECT  *  FROM  SPJ,S  
WHERE   SPJ.JNO=J.JNO  AND  SPJ.SNO=S.SNO  AND  S.CITY=‘天津’);
(8) UPDATE  P  SET  COLOR='蓝'  WHERE  COLOR='红';
(9) UPDATE  SPJ  SET  SNO='S3  '
WHERE  SNO='S5'ANDJNO='J4'  AND  PNO='P6';
(10) DELETE  FROM  SPJ  WHERESNO='S2';
DELETEFROMSWHERESNO='S2';
*解析:注意删除顺序,应该先从SPJ表中删除供应商S2所供应零件的记录,然后从从S表中删除S2。
(11) INSERTINTOSPJ(SNO,JNO,PNO,QTY)  
INTO  VALUES  (S2,J6,P4,200); 
8.  R.A=S.A
9.基本表是本身独立存在的表,在SQL中一个关系就对应一个表。视图是从一个或几个基本表导出的表。视图本身不独立存储在数据库中,是一个虚表。即数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中。视图在概念上与基本表等同,用户可以如同基本表那样使用视图,可以在视图上再定义视图。
10.  基本表或视图  定义
11. (1)视图能够简化用户的操作。(2)视图使用户能以多种角度看待同一数据。(3)视图对重构数据库提供了一定程度的逻辑独立性。(4)视图能够对机密数据提供安全保护。
12. 
(1)SELECT  *  FROM  R  UNION  SELECT  *  FROM  T 
(2)SELECT  *  FROM  R  WHERE  DWH=’100’
(3)SELECT  XM ,XB  FROM  R
(4)SELECT  XM,DWH  FROM  R  WHERE  XB=’女’
(5)SELECT  R.BH,R.XM,R.XB,R.DWH,S.DWM
FROMR,S  WHERE  R.DWH=S.DWH
(6)SELECT  R.XM,R.XB,S.DWH  FROM  R,S  
WHERE  R.DWH=S.DWH  AND  R.XB=’男’
13. 
(1)INSERTINTORVALUES(25,"李明","男",21,"95031")
(2)INSERTINTOR(NO,NAME,CLASS)
VALUES(30,"郑和","95031")
(3)UPDATE  R  SET NAME="王华"  WHERE  NO=10
(4)UPDATE  R  SET  CLASS="95091"  WHERE  CLASS="95101"
(5)DELETE  FROM  R   WHERE  NO=20
(6)DELETE  FROM  R  WHERE  NAME  LIKE“王%
第4-5章
14.建视图:
CREATE  VIEW  V_SPJ  AS  SELECT  SNO,PNO,QTY
FROM  SPJ  WHERE  JNO=(SELECT  JNO  FROM  JWHERE  JNAME='三建');
对该视图查询:
(1)SELECT  PNO,QTY   FROM   V_SPJ;
(2) SELECT  PNO,QTY  FROM   V_SPJ  WHERE  SNO='S1';
15.(1) GRANT  INSERT  ON  TABLE  S TO张勇 WITH  GRANT  OPTION;
(2) GRANT  SELECT,  UPDATE(QTY)  ON  TABLE  SPJ  TO李天明;
16.在SQL语句前加上前缀EXECSQL。SQL语句的结束标志则随主语言的不同而不同。
例如在PL/1和C中以分号(;)结束,在COBOL中以END-EXEC结束。
17.数据库工作单元与源程序工作单元之间的通信主要包括:
(1)SQL通信区SQLCA,用来向主语言传递SQL语句的执行状态信息,使主语言能够根据此信息控制程序流程。
(2)主变量(HostVariable),1)用来实现主语言向SQL语句提供参数。2)将SQL语句查询数据库的结果交主语言进一步处理
(3)游标(Cursor),解决集合性操作语言与过程性操作语言的不匹配通过游标逐一获取记录,并赋给主变量,交由主语言进一步处理。


版权声明:本文为qq_52897257原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_52897257/article/details/124504489