一、填空:(10分)
1、事务的特性包括:( )、一致性、( )、和持久性。
2、SQL数据库中的表,可以是基本表,也可以是( )。
3、关系数据模型的数据完整性规则包括( )完整性、( )完整性和用户定义的完整性。
4、E-R方法的三要素是:实体、( )和联系。
5、完整性是指数据的( )和( )。
6、数据库设计的特点之一是( )设计和( )设计相结合的。
二、单项选择(20分)
1. ________是专门支持数据库创建、管理和使用的系统软件,它位于应用程序与操作系统之间。
A. 数据库 B. 数据库系统 C. 信息管理系统 D. 数据库管理系统
2. 通过模式/内模式映像,可以保证数据和应用程序之间的________。
A. 逻辑数据性 B. 物理数据性 C. 数据一致性 D. 数据安全性
3. 在数据库中,产生数据不一致的根本原因是________。
A. 数据存储量太大 B. 没有严格保护数据 C. 未对数据进行完整性的控制 D. 数据冗余
4. 关系模型中,一个主键(主码) ________。
A. 由多个任意属性组成 B. 至多由一个属性组成
C. 可由一个或多个属性组成 D. 与属性无关
5. 在数据库中有如下图所示的两个表,若职工表的主键(主码)是职工号,外键(外码)是部门号,部门表的主键(主码)是部门号,则SQL操作不能成功执行的是________。
A. 从职工表中删除行('025','王百万','03',2900)
B. 将行('005','乔兴','04',750)插入到职工表中
C. 将职工号为“001”的工资改为5700
D. 将职工号为“003”的部门号改为'03'
6. 如果一个部门有多个员工,并且一个员工只能属于一个部门,那么部门和员工两个实体集之间的关系属于________。
A. 一对一关系 B. 一对多关系 C. 一对二关系 D. 多对多关系
7. 将E-R图转换为关系模式时,如果两实体间的联系是m:n,下列说法中正确的是________。
A. 将m方主键(主码)和联系的属性纳入n方的属性中
B. 将n方主键(主码)和联系的属性纳入m方的属性中
C. 在m方属性和n方属性中均增加一个表示级别的属性
D. 增加一个关系表示联系,其中纳入m方和n方的主键(主码)
8. 数据流图(DFD)是从数据传递和加工的角度来刻画数据从输入到输出的移动变换过程,它用于________阶段。
A. 可行性分析 B. 详细设计 C. 需求分析 D. 代码设计
9. 数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是________。
A. 建立数据库 B. 加载数据 C. 系统调试 D. 扩充功能
10. 在关系数据库中,视图(view)是数据库三级模式中的________。
A. 内模式 B. 模式 C. 存储模式 D. 外模式
11. 关系数据库中,通过表与表之间的________来实现实体之间的联系。
A. 公共关键字 B. 公共元组 C. 公共属性 D. 公共索引
12. 若对数据库的某些操作不能分割,则可将相应操作序列定义为一个________。
A. 文件 B. 视图 C. 事务 D. 数据表
13. 在一个应用程序登录界面,要求用户输入正确的用户名和密码,这属于数据库的________功能。
A. 安全性控制 B. 数据库备份与恢复 C. 并发控制 D. 完整性控制
14. 多用户数据库系统的目标之一是使在同一时刻它的每个用户好像正在使用各自的数据库,为此数据库系统必须进行________。
A. 安全性控制 B. 完整性控制 C. 并发控制 D. 数据库恢复
15. 基于“学生-选课-课程”数据库中如下三个关系(其中“#”表示主键字段):S(SNUM#,SNAME,SEX,AGE),SC(SNUM#,CNUM#,GRADE),C(CNUM#,CNAME,TEACHER),查找学号SNUM为“200301188”的学生选修课程名CNAME为“数据库”的成绩,至少将使用关系________。
A. S和SC B. SC和C C. S和C D. S、SC和C
16. 有关系R和S,则R-S等价于_________
A. R-(R∪S) B. R-(R∩S) C. (R∪S)-R D. (R∩S)-R
17.设关系R和S的元组个数分别是400和400,那么R×S的元组个数是________
A. 0 B. 400 C. 800 D. 160000
18. 一个事务在执行过程中,其正在访问的数据被其他事务所修改,导致处理结果不正确,这是因为违反了事务的__________而造成的。
A. 原子性 B. 隔离性 C. 持久性 D. 一致性
19. SQL语句中的revoke语句是用于实现数据库的__________
A. 安全性 B. 完整性 C. 可靠性 D.一致性
20. 设有关系模式R(A,B,C),其函数依赖集F={A→B,B→C},则关系R至多满足________。
A. 1NF B. 2NF C. 3NF D. BCNF
三、简答:(20分)
1、请给出如下术语的中文含义:
(1)SQL (2)DD (3)DFD (4)DBA (5)DBMS
2、请举例说明参照完整性约束的含义
3、请列举数据库设计的六个阶段
4、请列举进行数据库安全控制的主要措施
四、综合设计:(50分)
1、SQL语句填空(本小题共5个空,每空3分,共15分)。
Company数据库模式如下:
Department(Dno, Dname, Note)
其中Dno表示部门编号,Dname表示部门名称,Note表示备注。
Employee(Eno,Ename,Ebirth,Eaddress,Ezipcode,Etel,Email,Dno)
其中Eno表示职工号,Ename表示职工姓名,Ebirth表示生日,Eaddress表示家庭住址,Ezipcode表示邮编,Etel表示联系电话,Email表示电子邮件,Dno表示该职工所在部门编号。
Salary(Eno, SalaryDate, Salary)
其中Eno表示职工号,SalaryDate 表示发工资的日期,Salary表示本月工资。
请在Company数据库中完成可实现以下功能的SQL语句,并填写到各小题空格中。
(1)查询所有邮编为"210010"的职工的基本信息。________(1)________
(2)查询"经理办公室"的所有职工的姓名、联系电话和电子邮件。________(2)________
(3)查询每个职工的工资总收入,并按照姓名降序排序。________(3)________
(4)将部门编号为"1"的所有职工的电话号码前增加区号"021"。________(4)________
(5)删除2007年的所有工资记录。________(5)________
2、设有关系模式(10分)
R(职工名,项目名,工资,部门名,部门经理)
如果规定,每个职工可参加多个项目,各领一份工资;每个项目只属于一个部门管理;每个部门只有一个经理。
(1) 试写出关系模式R的基本FD和关键码。
(2) 说明R不是2NF的理由,并把R分解成2NF模式集。
(3) 进而把R分解成3NF模式集,并说明如何解决上述问题。
3、工厂(包括厂名和厂长名)需建立一个管理数据库存储以下信息:(15分)
(1)一个工厂内有多个车间,每个车间有车间号、车间主任姓名、地址和电话。
(2)一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种。
(3)一个车间生产多种产品,产品有产品号和价格。
(4)一个车间生产多种零件,一个零件也可能为多个车间制造。零件有零件号、重量和价格。
(5)一个产品由多种零件组成,一种零件也可装配出多种产品。
(6)产品与零件均存入仓库中。
(7)厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。
试:
(1)画出该系统的E-R图。
(2)给出相应的关系模式。
(3)说明各关系模式的侯选码。
4、设T1,T2,T3是如下三个事务:(10分)
T1:A=A+2
T2:A=A*2
T3:A=A**2 (A**2表示A2)
设A初值为0,请回答如下问题:
(1)若这三个事物允许并发执行,则有多少种可能的正确结果,请一一列举出来;
(2)请给出一个可串行化的调度。
一、填空题(每空1分,共20分)
1.数据管理技术共经历了三个阶段:人工管理阶段、 、 。
2.事务具有四个基本特性,分别是:原子性、 、隔离性和 。
3.关系数据语言主要可以分为以下三类:关系代数语言、 和 。
4.在数据库系统中,并发控制的基本方法是 ,并发控制的基本单位是 。
5.关系模型的组成要素为:数据结构、 和 。
6.数据库系统的三级模式结构包括:外模式、 和 。
7.数据库设计包括以下几个重要阶段, , , ,
,数据库的实施,数据库的运行和维护。
8.数据库设计过程是 和 的密切结合。
9.数据库的三类完整性是: , 和用户自定义完整性。
二、单选题(每题1分,共10分)
1.下面哪个选项不属于E-R图中的三要素:
| A.实体(型) | B.码 |
| C.联系 | D.属性 |
| A.事务故障 | B.系统故障 |
| C.日志故障 | D.介质故障 |
| A.=ANY B.<>ANY C.=ALL D.<>ALL |
A. 数据库系统包括数据库和数据库管理系统
B. 数据库管理系统包括数据库和数据库系统
C. 数据库包括数据库系统和数据库管理系统
D. 数据库系统就是数据库,也就是数据库管理系统
5.概念模型于:
A.E-R模型 B.硬件设备和DBMS C.现实世界 D. 信息世界
6.从E-R模型向关系模式转换时,一个m:n联系转换为关系模式时,该关系的码是:
| A.m端实体的码 | B.n端实体码 |
| C.m端实体的码与n端实体码的组合 | D.重新选取其他属性 |
A. 网状模型
B. 链状模型
C. 层次模型
D. 关系模型
8.若用如下的SQL语句创建一个表student:
CREATE TABLE student (NO CHAR(4) NOT NULL,
NAME CHAR(8) NOT NULL,
SEX CHAR(2),
AGE INT)
可以插入到student表中的是:
| A.(‘1031’,‘曾华’,男,23) B.(‘1031’,‘曾华’,NULL,NULL) |
| C.(NULL,‘曾华’, ‘男’, ‘23’) D.(‘1031’,NULL,‘男’,23) |
A.选择运算 B.投影运算 C.连接运算 D..除法运算
10. 将查询SC表的权限授予用户U1,并允许该用户将此权限授予其他用户。实现此功能的SQL语句是:
| A.GRANT SELECT TO SC ON U1 WITH PUBLIC |
| B.GRANT SELECT ON SC TO U1 WITH PUBLIC |
| C.GRANT SELECT TO SC ON U1 WITH GRANT OPTION |
| D.GRANT SELECT ON SC TO U1 WITH GRANT OPTION |
1.( ) 关系数据模型较非关系数据模型而言具有很多优点,没有缺点。
2.( ) E-R图是一种描述实体世界的数据模型。
3.( ) 数据库的三级模式结构保证了数据的性。
4.( ) 层次模型不能描述多对多关系。
5.( ) 包含在任何一个候选码中的属性叫做主属性。
6.( ) 删除异常是指该删除的数据删除不掉。
7.( ) 数据库避免了一切数据的重复。
8.( ) Armstrong公理推理规则中的合并规则为:若X→Y,X→Z,则X→YZ。
9.( ) 数据字典是系统中各类数据描述的集合。
10.( ) 关系的第二范式规定,数据关系在满足1NF的前提下,系统的每一个非主属性都完全函数依赖于主关键字。
四、简答题(每题5分,共15分)
1.指出下列缩写的含义:(5分)
(1)DFD ⑵DBS ⑶DDL ⑷DBA ⑸SQL
2.简述视图的作用。
3.请简述数据库系统中并发控制的重要性,以及并发控制的主要方法。
五、综合设计题(每题10分,共45分)
1.SQL的数据定义(每空1分,共5分)
请按照符号“--”后面的说明将下面的SQL语句中加下划线的部分补充完整,以完成关系模式的创建。
create table 供应商 (供应商号 char(4) (1) , --(1)将供应商号定义为主码
供应商名字 varchar(40) (2) , --(2)将供应商名字定义为非空列
所驻城市 varchar(20));
create table 零件(零件号 char(4) primary key,
零件名称 varchar(40) (3) , --(3)将零件名称定义为非空且唯一的列
颜色 char(10),
重量 numeric(7,2)
);
create table 零件供应(供应商号 char(4) (4) , --(4)参照供应商表的供应商号
零件号 char(4) references 零件(零件号),
供应数量numeric(11,2) not null (5) , --(5)规定供应数量必须大于等于0
primary key(供应商号,零件号)
);
2.SQL语句填空(本小题共5个空,每空2分,共10分)。
Company数据库模式如下:
Department(Dno, Dname, Note)
其中Dno表示部门编号,Dname表示部门名称,Note表示备注。
Employee(Eno,Ename,Ebirth,Eaddress,Ezipcode,Etel,Email,Dno)
其中Eno表示职工号,Ename表示职工姓名,Ebirth表示生日,Eaddress表示家庭住址,Ezipcode表示邮编,Etel表示联系电话,Email表示电子邮件,Dno表示该职工所在部门编号。
Salary(Eno, SalaryDate, Salary)
其中Eno表示职工号,SalaryDate 表示发工资的日期,Salary表示本月工资。
请在Company数据库中完成可实现以下功能的SQL语句,并填写到各小题空格中。
(1)查询所有邮编为"210010"的职工的基本信息。________(1)________
(2)查询"经理办公室"的所有职工的姓名、联系电话和电子邮件。________(2)________
(3)查询每个职工的工资总收入,并按照姓名降序排序。________(3)________
(4)将部门编号为"1"的所有职工的电话号码前增加区号"021"。________(4)________
(5)删除2007年的所有工资记录。________(5)________
3、设有关系模式(10分)
R(汽车牌照,司机编号,行驶公里,班组编号,班组长)
如果规定:
(1) 每个汽车牌照对应一辆汽车。"行驶公里"为某司机驾驶某辆汽车行驶的总公里数。
(2) 每个司机属于一个班组;每个班组有一个班组长。
试回答下列问题:
(1) 根据上述规定,写出模式R的基本FD;
(2) 说明R不是2NF的理由,并把R分解成2NF模式集;
(3) 进而再分解成3NF模式集,说明如何解决上述问题。
4、一个图书馆借阅管理数据库要求提供下述服务:(10分)
(1)可随时查询书库中现有书籍的品种、数量与存放位置。所有各类书籍均可由书号惟一标识。
(2)可随时查询书籍借还情况,包括借书人单位、姓名、借书证号、借书日期和还书日期。
我们约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有惟一性。
(3)当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地址等信息下相应出版社增购有关书籍。我们约定,一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有惟一性。
根据以上情况和假设,试作如下设计:
画出该系统的E-R图。
(1)画出E-R图。
(2)给出相应的关系模式。
(3)说明各关系模式的侯选码。
5、设T1,T2,T3是如下三个事务:(10分)
T1:A=A+2
T2:A=A*3
T3:A=A**2 (A**2表示A2)
设A初值为0,请回答如下问题:
(1)若这三个事物允许并发执行,则有多少种可能的正确结果,请一一列举出来;
(2)请给出一个可串行化的调度。
参
一、填空:(10分)
1、原子性 隔离性 2、 视图 3、实体 参照 4、属性
5、有效性 相容性 6、( 结构 或 数据 )( 行为 或 处理 )
二、单项选择(20分)
| 题号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 答案 | D | B | D | C | B | B | D | C | A | D | C | C | A | C | B |
| 题号 | 16 | 17 | 18 | 19 | 20 | ||||||||||
| 答案 | B | D | B | A | B |
1、请给出如下术语的中文含义:
(1)SQL:结构化查询语言 (2)DD:数据字典 (3)DFD:数据流图
(4)DBA:数据库管理员 (5) DBMS:数据库管理系统
2、请举例说明参照完整性约束的含义
(略)
3、请列举数据库设计的六个阶段
需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库运行与维护
4、请列举进行数据库安全控制的主要措施
用户标识、视图、自主存取控制、强制存取控制、审计、加密
四、综合设计:(50分)
1、
(1) SELECT * FROM Employee WHERE Ezipcode='210010'
(2) SELECT Ename, Etel, Email FROM Employee INNER JOIN Department ON Employee.Dno= Department.Dno Where Dname= '经理办公室'
SELECT Ename, Etel, Email FROM Employee, Department Where Employee.Dno= Department.Dno and Dname = '经理办公室'
(3) SELECT Ename, SUM(Salary) FROM Employee INNER JOIN Salary ON Employee.Eno = Salary.Eno GROUP BY Ename ORDER BY Ename DESC
SELECT Employee.Eno, Ename, SUM(Salary) FROM Employee,Salary WHERE Employee.Eno=Salary.Eno GROUP BY Employee.Eno, Ename ORDER BY Ename DESC
(4) UPDATE Employee SET Etel='021' & Etel where Dno='1'
(5) DELETE FROM Salary WHERE year(SalaryDate)=2007
DELETE FROM Salary WHERE SalaryDate>='2007-1-1' and SalaryDate<'2010-1-1'
2、
3、(1)
(2)相应的关系模式如下:
工厂(厂名、厂长姓名)
车间(车间号、车间主任姓名、地址、电话、厂名)
工人(职工号、姓名、年龄、性别、工种、车间号)
仓库(仓库号、仓库主任姓名、电话、长名)
产品(产品号、价格、车间号、仓库号)
零件(零件号、重量、价格、仓库号)
制造(车间号、零件号,数量)
装配(产品号、零件号、数量)
(3)候选码:厂名;车间号;职工号;仓库号;产品号;零件号;车间号+零件号;产品号+零件号
4、设T1,T2,T3是如下三个事务:(10分)
(1)16 , 8 , 4 , 2
(2)可串行化的调度:
| T1: | T2: | T3: |
| XLock A | XLock A | |
| XLock A | A=A*2 | Wait |
| Wait | 写A | Wait |
| XLock A | UnLock A | …… |
| A=A+2 | Wait | |
| 写 A | XLock A | |
| UnLock A | A=A**2 | |
| 写 A | ||
| UnLock A |