数据库原理-期末考试复习题一
一、单项选择题
(本大题共20小题,每小题2分,共40分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1. 数据库系统的核心是( B )
A.数据库 B.数据库管理系统 C.数据模型 D.软件工具
2. 下列四项中,不属于数据库系统的特点的是( C )
A.数据结构化 B.数据由DBMS统一管理和控制 C.数据冗余度大 D.数据独立性高
3. 概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是( D )
A.层次模型 C.网状模型
B.关系模型 D.实体-联系模型
4. 数据的物理独立性是指( C )
A.数据库与数据库管理系统相互独立 B.用户程序与数据库管理系统相互独立
C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的 D.应用程序与数据库中数据的逻辑结构是相互独立的
5. 要保证数据库的逻辑数据独立性,需要修改的是( A )
A.模式与外模式之间的映象 B.模式与内模式之间的映象 C.模式 D.三级模式
6. 关系数据模型的基本数据结构是( D ) A.树 B.图 C.索引 D.关系
7. 有一名为“列车运营”实体,含有:车次、日期、实际发车时间、实际抵达时间、情况摘
要等属性,该实体主码是( C )
A.车次 B.日期
C.车次+日期 D.车次+情况摘要
8. 己知关系R和S,R∩S等价于( B ) A. (R-S)-S B. S-(S-R)
C. (S-R)-R D. S-(R-S)
9. 学校数据库中有学生和宿舍两个关系: 学生(学号,姓名)和 宿舍(楼名,房间号,床位号,学号)
假设有的学生不住宿,床位也可能空闲。如果要列出所有学生住宿和宿舍分配的情况,包括没有住宿的学生和空闲的床位,则应执行( A ) A. 全外联接 B. 左外联接 C. 右外联接 D. 自然联接
10.用下面的T-SQL语句建立一个基本表:
1
11. 把对关系SPJ的属性QTY的修改权授予用户李勇的T-SQL语句是( C )
A. GRANT QTY ON SPJ TO '李勇'
B. GRANT UPDATE(QTY) ON SPJ TO '李勇' C. GRANT UPDATE (QTY) ON SPJ TO 李勇 D. GRANT UPDATE ON SPJ (QTY) TO 李勇 12. 图1中( B )是最小关系系统
A B C D
图1
13.关系规范化中的插入操作异常是指 ( D ) A.不该删除的数据被删除 B.不该插入的数据被插入 C.应该删除的数据未被删除 D.应该插入的数据未被插入
14.在关系数据库设计中,设计关系模式是数据库设计中( A )阶段的任务
A. 逻辑设计 B.物理设计 C.需求分析 D.概念设计
15.在E-R模型中,如果有3个不同的实体型,3个m:n联系,根据E-R模型转换为关系模
型的规则,转换后关系的数目为( C )。 A.4 B.5 C.6 D.7
16.事务的隔离性是指( A )。
A.一个事务内部的操作及使用的数据对并发的其他事务是隔离的 B.事务一旦提交,对数据库的改变是永久的 C.事务中包括的所有操作要么都做,要么都不做
D.事务必须是使数据库从一个一致性状态变到另一个一致性状态
17. 数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据是指( C )
A. 数据字典、应用程序、审计档案、数据库后备副本 B. 数据字典、应用程序、日志文件、审计档案 C. 日志文件、数据库后备副本
D. 数据字典、应用程序、数据库后备副本
18.若事务T对数据对象A加上S锁,则( B )。
A.事务T可以读A和修改A,其它事务只能再对A加S锁,而不能加X 锁。 B.事务T可以读A但不能修改A,其它事务只能再对A加S锁,而不能加X 锁。
2
CREATE TABLE Student(Sno CHAR(4) PRIMARY KEY,
Sname CHAR(8) NOT NULL, Sex CHAR(2), Age INT)
可以插入到表中的元组是( D ) A. '5021','刘祥',男,21 B. NULL,'刘祥',NULL,21 C. '5021',NULL,男,21 D. '5021','刘祥',NULL,NULL
C.事务T可以读A但不能修改A,其它事务能对A加S锁和X锁。 D.事务T可以读A和修改A,其它事务能对A加S锁和X锁。
19. 设有两个事务T1、T2,其并发操作如图2所示,下面评价正确的是( B ) A. 该操作不存在问题 B. 该操作丢失修改 C. 该操作不能重复读 D. 该操作读“脏”数据 T1 T2 ① 读A=100
② 读A=100
③ A=A-5写回
④ A=A-8写回
图2
20. 以下( D )封锁违反两段锁协议。
A. Slock A … Slock B … Xlock C ………… Unlock A … Unlock B … Unlock C B. Slock A … Slock B … Xlock C ………… Unlock C … Unlock B … Unlock A C. Slock A … Slock B … Xlock C ………… Unlock B … Unlock C … Unlock A D. Slock A …Unlock A ……Slock B … Xlock C ………...Unlock B … Unlock C
二、填空题
(本大题共9小题,每空1分,共10分)
请在每小题的空格中填上正确答案。错填、不填均无分。
1. 关系数据模型由关系数据结构、关系操作和 关系完整性约束 三部分组成。
2. 一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的 属性
3. 在Student表的Sname列上建立一个唯一索引的SQL语句为:
CREATE UNIQUE INDEX Stusname ON student(Sname)
4. SELECT语句查询条件中的谓词“!=ALL”与运算符 NOT IN 等价
5. 关系模式R(A,B,C,D)中,存在函数依赖关系{A→B,A→C,A→D,(B,C)→A},
则侯选码是 A和(B,C) ,R∈ AB NF。
6. 分E-R图之间的冲突主要有属性冲突、 命名冲突 、结构冲突三种。
7. 事物 是DBMS的基本单位,是用户定义的一个数据库操作序列。
8. 存在一个等待事务集{T0,T1,…,Tn},其中T0正等待被T1锁住的数据项,T1正等待被
T2锁住的数据项,Tn-1正等待被Tn锁住的数据项,且Tn正等待被T0锁住的数据项,这种情形称为 死锁 。
9. 可串行性 是并发事务正确性的准则。
三、简答题
(第1、3题3分,第2题4分,共10分) 1. 试述关系模型的参照完整性规则?
3
答:参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S
的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:取空值(F的每个属性值均为空值)或者等于S中某个元组的主码值。
2. 试述视图的作用?
(1)视图能够简化用户的操作。(1分) (2)视图使用户能以多种角度看待同一数据。(1分) (3)视图对重构数据库提供了一定程度的逻辑独立性。(1分)
(4)视图能够对机密数据提供安全保护。(1分)
3. 登记日志文件时必须遵循什么原则?
登记日志文件时必须遵循两条原则:
(1)登记的次序严格按并发事务执行的时间次序。(1分) (2)必须先写日志文件,后写数据库。(2分)
四、设计题
( 第1题4分,第2题6分,第3题3分,第4题4分,第5题8分,共25分) 1. 设教学数据库中有三个基本表:
学生表S(SNO,SNAME,AGE,SEX),其属性分别表示学号、学生姓名、年龄、性别。课程表C(CNO,CNAME,TEACHER),其属性分别表示课程号、课程名、上课教师名。选修表SC(SNO,CNO,GRADE),其属性分别表示学号、课程号、成绩。 有如下SQL查询语句: SELECT CNO FROM C
WHERE CNO NOT IN (SELECT CNO FROM S,SC
WHERE S.SNO=SC.SNO
AND SNAME='张三');
请完成下列问题:
(1)用汉语句子阐述上述SQL语句的含义;
(2)用等价的关系代数表达式表示上述SQL查询语句。
解:(1)查询张三同学没有选修的课程的课程号。(2分)
(2)πCNO(C)- πCNO (SNAME='张三' (S)SC) 或 πCNO(C)- πCNO (SNAME='张三' (SSC)) (2分)
2. 设有如图3所示的三个关系。其中各个属性的含义如下:A#(商店代号)、ANAME(商
店名)、WQTY(店员人数)、CITY(所在城市)、B#(商品号)、BNAME(商品名称)、PRICE(价格)、QTY(商品数量)。
A B# BNAME PRICE A# ANAME WQTY CITY 101 韶山商店 204 前门百货商店 256 东风商场
15 89 501 长沙 北京 北京 4
1 2 3 4 毛笔 羽毛球 收音机 书包 21 784 1325 242
345 铁道商店 620 第一百货公司 76 413 长沙 上海 A# 101 101 101 101 204 256 256 345 345 345 620 AB B# 1 2 3 4 3 1 2 1 2 4 4 图3
QTY 105 42 25 104 61 241 91 141 18 74 125 试用SQL语言写出下列查询:
(1)找出店员人数不超过100人或者在长沙市的所有商店的代号和商店名。
(2)找出至少供应了代号为’256’的商店所供应的全部商品的其它商店的商店名和所在城
市。
解:(1)SELECT A#, ANAME FROM A
WHERE WQTY<=100 OR CITY='长沙'; (2分) (2)SELECT ANAME,CITY FROM A
WHERE NOT EXISTS (SELECT * FROM B WHERE EXISTS
(SELECT * FROM AB AB1
WHERE A#='256' AND B#=B.B#) AND NOT EXISTS
(SELECT * FROM AB AB2
WHERE A#!='256' AND A#=A.A# AND B#=B.B#) ); (4分)
3. 设有职工基本表:EMP(ENO,ENAME,AGE,SEX,SALARY),其属性分别表示职
工号、姓名、年龄、性别、工资。为每个工资低于1000元的女职工加薪200元,试写出这个操作的SQL语句。
UPDATE EMP
SET SALARY=SALARY+200
WHERE SALARY<1000 AND SEX='女';(3分)
4. 设某工厂数据库中有两个基本表:
车间基本表:DEPT(DNO,DNAME,MGR_ENO),其属性分别表示车间编号、车间名
5
和车间主任的职工号。
职工基本表:ERP(ENO,ENAME,AGE,SEX,SALARY,DNO),其属性分别表示职工号、姓名、年龄、性别、工资和所在车间的编号。
建立一个有关女车间主任的职工号和姓名的视图,其结构如下:
VIEW6(ENO,ENAME)。试写出创建该视图VIEW6的SQL语句。 参考答案1:
CREATE VIEW VIEW6 AS
SELECT ENO, ENAME FROM EMP WHERE SEX='女' AND ENO IN (SELECT MGR_ENO FROM DEPT)
参考答案2:
CREATE VIEW VIEW6 AS
SELECT ENO, ENAME FROM DEPT, EMP
WHERE MGR_ENO=ENO AND SEX='女' (4分)
5. 设有关系R和函数依赖F:
R(A,B,C,D,E),F = { ABC→DE,BC→D,D→E }。 试求下列问题:
(1)关系R的侯选码是什么?R属于第几范式?并说明理由。(3分) (2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。(5分) 要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。 (1)关系R的候选码是(A,B,C),R∈1NF,因为R中存在非主属性D,E对候选码
(A,B,C)的部分函数依赖。 (3分) (2)首先消除部分函数依赖
将关系分解为:
R1(A,B,C) (A,B,C)为候选码,
R1中不存在非平凡的函数依赖
R2(B,C,D,E),(B,C)为候选码,
R2的函数依赖集为:F2={(B,C)→D,D→E}
在关系R2中存在非主属性E对候选码(B,C)的传递函数依赖,所以将R2进一步分解:
R21(B,C,D) ,(B,C)为候选码,
R21的函数依赖集为:F21 = { (B,C)→D } R22(D,E) ,D为候选码,
R22的函数依赖集为:F22 = { D→E }
6
在R1中已不存在非平凡的函数依赖,在R21、R22关系模式中函数依赖的决定因素均为候选码,所以上述三个关系模式均是BCNF。
五、综合题(15分)
某企业集团有若干工厂,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂按照固定的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘用职工有聘期和工资。工厂的属性有工厂编号、厂名、地址,产品的属性有产品编号、产品名、规格,职工的属性有职工号、姓名。
(1)根据上述语义画出E-R图;(5分) (2)将该E-R模型转换为关系模型;(5分)
(要求:1:1和1:n的联系进行合并)
(3)指出转换结果中每个关系模式的主码和外码。(5分) (1)本题的E-R图如下图所示。
地址 厂名 产品编号 产品名 工产编号 n m 产品 工厂 生产 1 计划数量 聘用 聘期 n 工资 职工 职工号 姓名 (2)转化后的关系模式如下: 工厂(工厂编号,厂名,地址) 产品(产品编号,产品名,规格)
职工(职工号,姓名,工厂编号,聘期,工资) 生产(工厂编号,产品编号,计划数量)
(3)每个关系模式的主码、外码如下: 工厂:主码是工厂编号,无外码; 产品:主码是产品编号,无外码; 职工:主码职工号,外码是工厂编号; 生产:主码是(工厂编号,产品编号), 外码是工厂编号、产品编号。
规格 7
数据库原理-期末考试复习题二
一、单项选择题
(本大题共20小题,每小题2分,共40分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代
得 分 码填写在题后的括号内。错选、多选或未选均无分。
1. 下列四项中,不属于数据库系统的主要特点的是( )。
A.数据结构化 B.数据的冗余度小 C.较高的数据独立性 D.程序的标准化
2. 数据的逻辑独立性是指( )
A.内模式改变,模式不变 B.模式改变,内模式不变
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. 下列关系运算中,( )运算不属于专门的关系运算。 A.选择 B.连接
C.广义笛卡尔积 D.投影
8. SQL语言具有( )的功能。
A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵
9.从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的关
键字是( )。
A.M端实体的关键字 B.N端实体的关键字 C.M端实体关键字与N端实体关键字组合 D.重新选取其他属性
8
10. SQL语言中,删除一个表的命令是( )
A. DELETE B. DROP C. CLEAR D. REMOVE
11. 图1中( )是关系完备的系统
A B C D
图1
12.有关系模式A(S,C,M),其中各属性的含义是:S:学生;C :课程;M:名次,其语
义是:每一个学生选修每门课程的成绩有一定的名次,每门课程中每一名次只有一个学生(即没有并列名次),则关系模式A最高达到( ) A.1NF B.2NF C.3NF D.BCNF
13.关系规范化中的删除异常是指 ( ) A.不该删除的数据被删除 B.不该插入的数据被插入 C.应该删除的数据未被删除 D.应该插入的数据未被插入
14.在数据库设计中, E-R图产生于( )
A. 需求分析阶段 B.物理设计阶段 C.逻辑设计阶段 D.概念设计阶段
15.有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这
一规则属于( )。 A.实体完整性约束 B.参照完整性约束
C.用户自定义完整性约束 D.关键字完整性约束
16.事务是数据库运行的基本单位。如果一个事务执行成功,则全部更新提交;如果一个事
务执行失败,则已做过的更新被恢复原状,好像整个事务从未有过这些更新,这样保持了数据库处于( )状态。 A.安全性 B.一致性 C.完整性 D.可靠性
17. ( )用来记录对数据库中数据进行的每一次更新操作。
A.后援副本 B.日志文件 C.数据库 D.缓冲区
18. 在并发控制技术中,最常用的是封锁机制,基本的封锁类型有排它锁X和共享锁S,
下列关于两种锁的相容性描述不正确的是( ) A. X/X :TRUE B. S/S:TRUE C. S/X:FALSE D. X/S:FALSE
19. 设有两个事务T1、T2,其并发操作如图1所示,下面评价正确的是( )
9
A. 该操作不存在问题 B. 该操作丢失修改
C. 该操作不能重复读 D. 该操作读“脏”数据
T1 T2 read(A)
read(B)
sum=A+B
read(A)
A=A*2 write(A)
read(A)
read(B) sum=A+B write(A+B)
图2
20. 已知事务T1的封锁序列为:LOCK S(A)…LOCK S(B)…LOCK X(C)
…UNLOCK(B) …UNLOCK (A) …UNLOCK (C)
事务T2的封锁序列为:LOCK S(A) …UNLOCK (A) …LOCK S(B)
…LOCK X(C) …UNLOCK (C) …UNLOCK (B)
则遵守两段封锁协议的事务是( ) A.T1 B.T2 C.T1和T2 D.没有
二、填空题
(本大题共7小题,每空1分,共10分) 得 分 请在每小题的空格中填上正确答案。错填、不填均无分。
1. 关系数据库的实体完整性规则规定基本关系的 都不能取 。
2. 在关系A(S,SN,D)和B(D,CN,NM)中,A的主码是S,B的主码是D,则D在
A中称为 。
3. SQL语言中,用于授权的语句是_________。
4. 关系R与S的交可以用关系代数的5种基本运算表示为 。
5. 数据库系统中最重要的软件是 ,最重要的用户是
6. 数据库设计分为以下六个设计阶段:需求分析阶段、 、逻辑结构设计阶
段、 、数据库实施阶段、数据库运行和维护阶段。
7. 已知关系R(A,B,C,D)和R上的函数依赖集F={A→CD,C→B},则
R∈ NF。 三、简答题
(本大题共3小题,第1题4分,第2、3题各3分,共10分)
得 分 1. 试述数据、数据库、数据库管理系统、数据库系统的概念。
10
2. 说明视图与基本表的区别和联系。
3.数据库系统的故障有哪些类型?
四、设计题 得 分 (第1题15分,第2题10分,共25分)
1. 设有一个工程供应数据库系统,包括如下四个关系模式:
S(SNO,SNAME, STATUS,CITY); P(PNO,PNAME,COLOR,WEIGHT); J(JNO,JNAME,CITY);
SPJ(SNO,PNO,JNO,QTY);
供应商表S由供应商号、供应商名、状态、城市组成; 零件表P 由零件号、零件名、颜色、重量组成; 工程项目表J由项目号、项目名、城市组成;
供应情况表SPJ由供应商号、零件号、项目号、供应数量组成; (1)用关系代数查询没有使用天津供应商生产的红色零件的工程号;(3分)
(2) 用关系代数查询至少使用了供应商S1所供应的全部零件的工程号JNO;(3分)
(3)用SQL查询供应工程J1零件为红色的工程号JNO;(2分)
(4)用SQL查询没有使用天津供应商生产的零件的工程号;(3分)
11
(5)用SQL语句将全部红色零件改为蓝色;(2分)
(6)用SQL语句将(S2,P4,J6,400)插入供应情况关系。(2分)
2. 设有关系STUDENT(S#,SNAME,SDEPT,MNAME,CNAME,GRADE),(S#,CNAME)为
候选码,设关系中有如下函数依赖: (S#,CNAME)→SNAME,SDEPT,MNAME
S#→SNAME,SDEPT,MNAME (S#,CNAME)→GRADE SDEPT→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分)
12
试题二
参考答案与评分标准
一、选择题(每题2分) 1.D 2.C 3.D 4.A 5.B 6.D 7.C 8.B 9.C 10.B 11.C 12.D 13.A 14.D 15.C 16.B 17.B 18.A 19.C 20.A 二、填空题(每空1分)
1. 主属性 空值(或NULL) 2. 外码 3. GRANT 4. R-(R-S) 5. 数据库管理系统(或DBMS) 数据库管理员(或DBA) 6. 概念结构设计阶段 物理结构设计阶段 7. 2
三、简答题(本大题共3小题,第1题4分,第2、3题各3分,共10分) 1、参考答案:
答: 数据:描述事物的符号记录。(1分)
数据库:长期存储在计算机内的、有组织的、可共享的数据集合。(1分)
数据库管理系统:是位于用户与操作系统之间的具有数据定义、数据操纵、数据库的运行管理、数据库的建立和维护功能的一层数据管理软件。(1分)
数据库系统:在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。(1分)
评分标准:四个基本概念各1分,意思表达正确即可给分。 2、参考答案:
答:视图是从一个或几个基本表导出的表,它与基本表不同,是一个虚表,数据库中只存
放视图的定义,而不存放视图对应的数据,这些数据存放在原来的基本表中,当基本表中的数据发生变化,从视图中查询出的数据也就随之改变(2分)。视图一经定义就可以像基本表一样被查询、删除,也可以在一个视图之上再定义新的视图,但是对视图的更新操作有限制(1分)。
评分标准:意思表达正确即可给分。 3、参考答案: 答:故障主要有下面三种类型: (1)事务故障(1分) (2)系统故障(1分) (3)介质故障(1分)
评分标准:关键字“事务”、“系统”、“介质”中有错别字一律该项不给分。 四、设计题 1、
(1)参考答案:
πJNO(J)- πJNO (CITY='天津' (S)
SPJ
COLOR='红' (P))
评分标准:
两个关系的差1分;三个表的自然连接SSPJP1分,少任意一个关系不给分;CITY='天津'和COLOR='红'两个条件1分,任意一个错误不给分。
13
(2)参考答案:
πPNO,JNO(SPJ)÷πPNO (SNO='S1' (SPJ)) 评分标准:
两个关系的除1分;πPNO,JNO和πPNO1分,任意一个错误不给分;SNO='S1'1分。 (3)
参考答案1:
SELECT DISTINCT JNO
FROM SPJ,P
WHERE SPJ.PNO=P.PNO AND
COLOR='红'AND JNO='J1'; 评分标准:
SELECT DISTINCT JNO FROM SPJ,P 1分,少DISTINCT扣0.5分,SPJ,P中少任一表不给分;WHERE SPJ.PNO=P.PNO AND COLOR='红'AND JNO='J1'1分,3个条件每错一个扣0.5,扣完1分为止。
参考答案2:
SELECT DISTINCT SNO
FROM SPJ
WHERE JNO='J1' AND
PNO IN
(SELECT PNO FROM P
WHERE COLOR='红');
评分标准:
SELECT DISTINCT JNO FROM SPJ 1分,少DISTINCT扣0.5分;WHERE JNO='J1' AND
PNO IN
(SELECT PNO FROM P
WHERE COLOR='红')1分,无JNO='J1'、PNO IN、SELECT PNO FROM
P WHERE COLOR='红'均扣0.5分,扣完1分为止。 (4)
参考答案1:
SELECT JNO
FROM J
WHERE JNO NOT IN (SELECT JNO FROM SPJ
WHERE SNO IN
14
(SELECT SNO FROM S
WHERE CITY='天津'));
评分标准:
SELECT JNO
FROM J
WHERE JNO NOT IN 和
SELECT JNO FROM SPJ
WHERE SNO IN
和
SELECT SNO FROM S
WHERE CITY='天津'
三层嵌套各1分,各嵌套内有错误则该项均不给分。
参考答案2:
SELECT JNO FROM J
WHERE NOT EXISTS (SELECT * FROM SPJ,S
WHERE SPJ.SNO=S.SNO AND
SPJ.JNO=J.JNO AND CITY='天津');
评分标准:
SELECT JNO FROM J
WHERE NOT EXISTS 1分; SELECT *
FROM SPJ,S 1分,SPJ,S少一个表不给分; WHERE SPJ.SNO=S.SNO AND
SPJ.JNO=J.JNO AND
CITY='天津'1分,三个条件少一个扣0.5,扣完1分为止。
参考答案3:
SELECT JNO
FROM J
WHERE NOT EXISTS (SELECT * FROM SPJ
WHERE SPJ.JNO=J.JNO AND EXISTS (SELECT *
15
FROM S
WHERE S.SNO=SPJ.SNO AND
CITY='天津'));
评分标准:
SELECT JNO
FROM J
WHERE NOT EXISTS 和
SELECT * FROM SPJ
WHERE SPJ.JNO=J.JNO AND EXISTS
和
(SELECT * FROM S
WHERE S.SNO=SPJ.SNO AND
CITY='天津'))
三层嵌套各1分,各嵌套内有错误则该项均不给分。
(5)参考答案:
UPDATE P SET COLOR='蓝' WHERE COLOR='红';
评分标准:
UPDATE P 0.5分;SET COLOR='蓝'1分;WHERE COLOR='红'0.5分。
(6)参考答案:
INSERT INTO SPJ VALUES('S2','P4','J6',400); 评分标准:
INSERT INTO SPJ1分;VALUES('S2','P4','J6',400)1分。 2、参考答案:
(1) 关系STUDENT是1NF,因为F中存在非主属性SNAME,SDEPT,MNAME对侯
选码(S#,CNAME)的部分函数依赖。 (2)
① 首先消除部分函数依赖(S#,CNAME)→SNAME,SDEPT,MNAME将关系分解为:
R1(S#,SNAME,SDEPT,MNAME),S#为候选码,
R1的函数依赖集为:
F1 = { S#→SNAME,SDEPT,MNAME,SDEPT→MNAME}
R2(S#,CNAME,GRADE),S#为候选码,
R2的函数依赖集为:
F2={(S#,CNAME)→GRADE}
② 在关系R1中存在非主属性MNAME对候选码S#的传递函数依赖S#→MNAME,
所以将R1进一步分解:
R11(S#,SNAME,SDEPT) ,S#为候选码,
R11的函数依赖集为:
16
F11 = { S#→SNAME,SDEPT}
R12(SDEPT,MNAME) ,SDEPT为候选码,
R12的函数依赖集为: F12 = { SDEPT→MNAME}
在R2、R11、R12关系模式中函数依赖都是非平凡的,并且决定因素均是候选码,所以上述三个关系模式均是BCNF。 评分标准:
(1)正确指明R∈1NF(1分);正确说明R∈1NF的理由(2分)。
(2)首先正确将R分解为R1(S#,SNAME,SDEPT,MNAME)(2分)和R2(S#,CNAME,GRADE)(1分),再将R1正确分解为R11(S#,SNAME,SDEPT)(2分)和R12(SDEPT,MNAME)(2分),分解过程的叙述斟情扣分。 五、综合题 参考答案: (1)本题的E-R图如下图所示。
工产编号 厂名 地址 产品编号 产品名 规格 n m 产品 工厂 生产 1 计划数量 聘用 聘期 n 工资 职工 职工号 姓名 (2)转化后的关系模式如下: 工厂(工厂编号,厂名,地址) 产品(产品编号,产品名,规格)
职工(职工号,姓名,工产编号,聘期,工资) 生产(工产编号,产品编号,计划数量)
(3)每个关系模式的主码、外码如下: 工厂:主码是工产编号; 产品:主码是产品编号;
职工:职工号,外码是工厂编号; 生产:主码是(工产编号,产品编号),
17
外码是工产编号、产品编号。 评分标准:
(1)三个实体型工厂、产品、职工各1分,属性漏写、错写不给分;两个联系各1分,
名称一定要表达联系含义,联系类型错误不给分,属性漏写不给分。
(2)转化后的工厂关系模式、产品关系模式、生产关系模式各1分,有一个属性不正确
均不给分,职工关系模式2分。 (3)工厂:主码是工产编号(0.5分),无外码(0.5分); 产品:主码是产品编号(0.5分),无外码(0.5分); 职工:主码职工号(0.5分),外码是工厂编号(0.5分); 生产:主码是(工产编号,产品编号)(1分), 外码是工产编号(0.5分)、产品编号(0.5分)。
18
数据库原理-期末考试复习题三
一、单项选择题
(本大题共20小题,每小题1.5分,共30分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
得 分 阅卷人 复查人 1. 数据库系统与文件系统的主要区别是( )
A.数据库系统复杂,而文件系统简单
B.文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决 C.文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件 D.文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量
2. 数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作的数据库语言称
为( )
A.数据定义语言(DDL) B.数据管理语言 C.数据操纵语言(DML) D.数据控制语言 A.允许一个以上结点无双亲,也允许一个结点有多个双亲 B.必须有两个以上的结点
C.有且仅有一个结点无双亲,其余结点都只有一个双亲
D.每个结点有且仅有一个双亲 4. 数据的逻辑独立性是指( )
A.内模式改变,模式不变 B.模式改变,内模式不变
C.模式改变,外模式和应用程序不变 D.内模式改变,外模式和应用程序不变
5. 设有关系模式EMP(职工号,姓名,年龄,技能)。假设职工号唯一,每个职工有多项技
能,则EMP表的主码是( ) A.职工号 B.姓名,技能 C.技能 D.职工号,技能
6. 在关系代数中,对一个关系做投影操作后,新关系的元组个数( )原来关系的元组
个数。 A.小于 B.小于或等于 C.等于 D.大于
7. 设关系R和S的属性个数分别是2和3,那么R1<2 S等价于( )
A.1<2(RS) B.1<4(RS) C.1<2(RS) D.1<4(RS)
8. 学校数据库中有学生和宿舍两个关系: 学生(学号,姓名)和 宿舍(楼名,房间号,床位号,学号)
假设有的学生不住宿,床位也可能空闲。如果要列出所有学生住宿和宿舍分配的情况,包括没有住宿的学生和空闲的床位,则应执行( )
19
3. 数据库的网状模型应满足的条件是( )
9. 用下面的T-SQL语句建立一个基本表:
CREATE TABLE Student(Sno CHAR (4) NOT NULL,
Sname CHAR (8) NOT NULL, Sex CHAR (2), Age SMALLINT)
可以插入到表中的元组是( ) A. '5021','刘祥',男,21 B.NULL,'刘祥',NULL,21 C. '5021',NULL,男,21 D. '5021','刘祥',NULL,NULL 10. 把对关系SC的属性GRADE的修改权授予用户ZHAO的T-SQL语句是( )
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 ZHAO
11. 图1中( )是关系完备的系统
A B C D
图1
12. 给定关系模式SCP(Sno,Cno,P),其中Sno表示学号,Cno表示课程号,P表示名次。
若每一名学生每门课程有一定的名次,每门课程每一名次只有一名学生,则以下叙述中错误的是( ) A.(Sno,Cno)和(Cno,P)都可以作为候选码。 B.(Sno,Cno)是唯一的候选码。 C. 关系模式SCP既属于3NF也属于BCNF。 D. 关系模式SCP没有非主属性。
13.关系规范化中的删除操作异常是指 ( ) A.不该删除的数据被删除 B.不该插入的数据被插入 C.应该删除的数据未被删除 D.应该插入的数据未被插入
14.在数据库设计中,将E-R图转换成关系数据模型的过程属于( )
A. 需求分析阶段 B.物理设计阶段 C.逻辑设计阶段 D.概念设计阶段
15.在合并分E-R图时必须消除各分图中的不一致。各分E-R图之间的冲突主要 有三类,即属性冲突、命名冲突和结构冲突,其中命名冲突是指( )。
A.命名太长或太短 B.同名异义或同义异名 C.属性类型冲突
D.属性取值单位冲突
20
A. 全外联接 C. 右外联接 B. 左外联接 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,其并发操作如图2所示,下面评价正确的是( ) A.该操作不存在问题 B.该操作丢失修改 C.修改该操作不能重复读 D.该操作读“脏”数据 T1 T2 ① 读A=100 A=A*2写回
② 读A=200
③ ROLLBACK 恢复A=100 图2 20. 图3是一个( )
A. ER图 C. DFD图
B.I/O图 D.IPO图
图3
二、填空题 得 分 (本大题共10小题,每小题1分,共10分)
阅卷人 请在每小题的空格中填上正确答案。错填、不填均无分。
复查人 1. 数据库系统的三级模式结构是指数据库系统由 、模式和
内模式三级构成。
2. 在关系A(S,SN,D)和B(D,CN,NM)中,A的主码是S,B的主码是D,则D在
S中称为 。
21
3. 关系操作的特点是 操作。
4. 已知学生关系(学号,姓名,年龄,班级),要检索班级为空值的学生姓名,其SQL查询
语句中 WHERE子句的条件表达式是 。
5. 集合R与S的连接可以用关系代数的5种基本运算表示为 。
6. SELECT语句查询条件中的谓词“=ANY”与运算符 等价。
7. 在数据库中,只存放视图的 ,不存放视图对应的数据。 8. “为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的
设计阶段。
9. 并发控制的主要方法是 机制。 10. 已知关系R(A,B,C,D)和R上的函数依赖集F={A→CD,C→B},R属于第 范
式。
三、简答题
得 分 (第1题5分,第2、3题各6分共17分) 阅卷人 1. 数据库管理系统有哪些功能?
复查人
2. 数据库设计分哪几个阶段?
3. 简述三级封锁协议的内容以及不同级别的封锁协议能解决哪些数据不一致性
问题?
22
得 分 四、设计题
(第1题4分,第2、3、4题各8分,共28分)
阅卷人
1. 设有学生选课关系SC(学号,课程号,成绩),试用SQL语句检复查人 索每门课程的最高分。
2. 关系模式如下:
商品P(PNO,PN,COLOR,PRICE) 商店S(SNO;SN,CITY) 销售SP(PNO,SNO,QTY)
分别用关系代数和SQL写出查询语句:查询销售商品\"TV”的商店名SN。 SP必须书写在S、P之间
3. 设有关系R和S如图2所示。
R S
A a1 a2 a3 B b1 b2 b3 A a1 a2 a3 C 40 50 55 试用SQL语句实现:
(1)查询属性C>50时,R中与相关联的属性B之值。(3分) (2)当属性C=40时,将R中与之相关联的属性B值修改为b4。(5分)
23
4. 设有关系R和函数依赖F:
R(W,X,Y,Z),F = { X→Z,WX→Y }。 试求下列问题:
(1)关系R属于第几范式?(3分)
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。(5分) 要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
五、综合题(15分) 得 分
阅卷人 某医院病房管理系统中,包括四个实体型,分别为: 科室:科名,科地址,科电话 复查人 病房:病房号,病房地址
医生:工作证号,姓名,职称,年龄 病人:病历号,姓名,性别 且存在如下语义约束:
① 一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个
科室;
② 一个医生可负责多个病人的诊治,一个病人的主管医生只有一个; ③ 一个病房可入住多个病人,一个病人只能入住在一个病房。 注意:不同科室可能有相同的病房号。 完成如下设计:
(1)画出该医院病房管理系统的E-R图;(5分) (2)将该E-R图转换为关系模型;(5分)
(要求:1:1和1:n的联系进行合并)
(3)指出转换结果中每个关系模式的主码和外码。(5分)
24
试题三参考答案与评分标准
一、选择题(每题1.5分) 1.B 2.C 3.A 4.C 5.D 6.B 7.B 8.A 9.D 10.C 11.D 12.B 13.A 14.C 15.B 16.C 17.C 18.C 19.D 20.C 二、填空题(每题1分) 1. 外模式 2. 外码 3. 集合 4. 班级 IS NULL 5. σF(R×S) 6. IN 7. 定义 8. 物理 9. 封锁 10. 二 三、简答题 1、参考答案:
答:数据库管理系统(DBMS)是位于操作系统与用户之间的一个数据管理软件,它主要功能
包括以下几个方面:
(1)数据定义功能:DBMS提供数据描述语言(DDL),用户可通过它来定义数据对象。 (2)数据操纵功能:DBMS还提供数据操纵语言(DML),实现对数据库的基本操作:
查询、插入、删除和修改。
(3)数据库的运行管理:这是DBMS运行时的核心部分,它包括并发控制,安全性检查,
完整性约束条件的检查和执行,发生故障后的恢复等。
(4)数据库的建立和维护功能: 它包括数据库初始数据的输入及转换,数据库的转储与
恢复,数据库的重组功能和性能的监视与分析功能等。 评分标准:四个关键词每个1分,细节叙述1分。 2、参考答案:
数据库设计分以下六个阶段: (1)需求分析
(2)概念结构设计 (3)逻辑结构设计 (4)物理结构设计 (5)数据库实施
(6)数据库运行和维护
评分标准:六个关键词每错一个扣1分。
3、参考答案:
(1) 一级封锁协议是:事务T在修改数据R之前必须先对其加X锁,直到事务结束才释
放。一级封锁协议能够解决“丢失修改”问题。 (2) 二级封锁协议是:一级封锁协议加上事务在读取数据R之前必须先对其加S锁 ,读
完后即可释放S锁。二级封锁不仅可以解决“丢失修改”问题,而且可以解决读“脏“数据问题。 (3) 三级封锁协议是:一级封锁协议加上事务在读取数据R之前必须先对其加S锁,直
到事务结束才释放。三级封锁协议不仅解决了“丢失修改”、读“脏”数据问题,而且进一步解决了“不可重复读”问题。 评分标准:
25
各级封锁协议内容各1分,应着重三个方面,何时加锁,加什么锁,锁何时释放,缺少任一点都要扣0.5分;各级封锁协议能解决哪些数据不一致问题各1分。 四、设计题 1、参考答案:
SELECT 课程号,MAX(成绩) FROM SC GROUP BY 课程号 评分标准:
MAX集函数和GROUP BY子句各1.5分,其它1分。
2、参考答案:
关系代数:πSN(PN='P1' (SSPP))
SQL: SELECT SN FROM S, SP, P WHERE S.SNO=SP.SNO AND P.PNO=SP. PNO
AND PN='TV'
评分标准:
关系代数:SSQL:
SP
P2分,SP必须书写在S、P之间,否则不得分,对三个关系作正确
的投影再做连接也正确;πSN、PN='P1'各1分。 WHERE子句的三个条件各1分,FROM子句1分,SP必须书写在S、P之间,否则不得分。
3、参考答案:
(1)SELECT B FROM R, S
WHERE R.A=S.A AND C>50 (2)UPDATE R SET B=’b4’ WHERE A IN
(SELECT A FROM S
WHERE C=40)
评分标准:
(1)WHERE子句的两个条件各1分;其它1分。
(2)UPDATE1分;SET子句1分;A 1分;IN 1分;内层子查询1分。
(1)R是1NF。侯选码为WX,则Y,Z为非主属性,又由于X→Z,因此F中存在非主
属性对侯选码的部分函数依赖。 (2)将关系分解为:
R1(W,X,Y),F1 = { WX→Y } R2(X,Z),F2 = { X→Z }
消除了非主属性对码的部分函数依赖。 F1和F2中的函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是
26
4、参考答案:
BCNF。
评分标准:
(1)回答R是1NF并正确说明理由3分,没有正确回答出理由扣1分。
(2)分解所得的两个关系模式各1.5分,正确回答消除什么类型的函数依赖和说明所得
的两个关系模式是BCNF各1分。
五、综合题 参考答案:
病房号 病房地址 科名 1 组成 科地址 科电话 (1)本题的E-R图如下图所示。
病房 1 入住 n 病人 n 科室 1 拥有 n n 诊治 1 医生 病历号 姓名 性别 工作证号 姓名 职称 年龄 某医院病房管理系统的基本E-R图
(2)转化后的关系模式如下: 科室(科名,科地址,科电话) 病房(病房号,病房地址,科名)
医生(工作证号,姓名,职称,年龄,科名)
病人(病历号,姓名,性别,主管医生,病房号,科名) (3)每个关系模式的主码、外码如下: 科室:主码是科名;
病房:主码是科名十病房号,外码是科名; 医生:主码是工作证号,外码是科名;
病人:主码是病历号,外码是科名十病房号。 评分标准:
(1)四个联系各0.5分,名称一定要表达联系含义,联系类型错误不给分;每个实体型
属性漏写、错写扣0.5分,漏写一个实体型扣1 分。
(2)转化后的科室关系模式、病房关系模式、医生关系模式各1分,有一个属性不正确
均不给分,病人关系模式2分,漏写一个属性扣1分, (3)病房关系模式主码1 分、病人关系模式外码1.5分,其余各0.5分。
27
数据库原理-期末考试复习题四
一、单项选择题
(本大题共20小题,每小题1.5分,共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,那么R1<2 S等价于( )
A.1<2(RS) B.1<4(RS) C.1<2(RS) D.1<4(RS)
8. SQL语言具有( )的功能。
A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵 9. 假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),
学生选课关系是SC(S#,C#,GRADE)。
要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系( )。
28
A.S B.SC,C C.S,SC D.S,C,SC 10. 已知关系SPJ(S#,P#,J#,QTY),把对关系SPJ的属性QTY的修改权授予用户张三的T-SQL
语句是( )
A. GRANT QTY ON SPJ TO 张三 B. GRANT UPDATE ON SPJ TO张三
C. GRANT UPDATE (QTY) ON SPJ TO张三 D. GRANT UPDATE ON SPJ (QTY) TO张三
11. 图1中( )是关系完备的系统
A B C D
图1
12.在R(U)中,如果X→Y,并且对于X的任何一个真子集X',都有X'→Y,则( )。
A. Y函数依赖于X B. Y对X完全函数依赖 C. X为U的候选码 D. R属于2NF
13.关系规范化中的插入操作异常是指 ( ) 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锁。
29
19. 设有两个事务T1、T2,其并发操作如图1所示,下面评价正确的是( ) A. 该操作不存在问题 B. 该操作丢失修改
C. 修改该操作不能重复读 D. 该操作读“脏”数据
C.事务T可以读A但不能修改A,其它事务只能再对A加S锁,而不能加X 锁。 D.事务T可以读A和修改A,其它事务能对A加S锁和X锁。
T1 T2 read(A)
read(B)
sum=A+B
read(A)
A=A*2 write(A)
read(A)
read(B) sum=A+B write(A+B)
图2
20. 已知事务T1的封锁序列为:LOCK S(A)…LOCK S(B)…LOCK X(C)
…UNLOCK(B) …UNLOCK (A) …UNLOCK (C)
事务T2的封锁序列为:LOCK S(A) …UNLOCK (A) …LOCK S(B)
…LOCK X(C) …UNLOCK (C) …UNLOCK (B)
则遵守两段封锁协议的事务是( ) A.T1 B.T2 C.T1和T2 D.没有
二、填空题
得 分 (本大题共10小题,每小题1分,共10分)
请在每小题的空格中填上正确答案。错填、不填均无分。
1. 数据管理经历了人工管理、文件系统、 三个阶段。
2. 数据模型由数据结构、数据操作和 三部分组成。
3. 在Student表的Sname列上建立一个聚簇索引的SQL语句为:
CREATE Stusname ON student(Sname)
4. SELECT语句查询条件中的谓词“=ANY”与运算符 等价。
5. 关系模式R({A,B,C},{(A,C)→B,(A,B)→C,B→C})最高可达到第 范式。
6. 数据抽象主要有分类和 两种。
7. 存在一个等待事务集{T0,T1,…,Tn},其中T0正等待被T1锁住的数据项,T1正等待被
T2锁住的数据项,Tn-1正等待被Tn锁住的数据项,且Tn正等待被T0锁住的数据项,这种情形称为 。 8. “为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的
设计阶段。
9. 并发控制的主要方法是 机制。
30
10. 故障分为事务故障、 和介质故障三种。
三、简答题
得 分 (本大题共3小题,每小题5分,共15分) 1. 简述等值连接与自然连接的区别和联系。
2. 说明视图与基本表的区别和联系?
3. 简述事务的特性。
四、设计题
得 分 (第1题20分,第2题10分,共30分) 1. 设有一个工程供应数据库系统,包括如下四个关系模式:
S(Sno,Sname, Status,City); P(Pno,Pname,Color,Weight); J(Jno,Jname,City);
SPJ(Sno,Pno,Jno,Qty);
供应商表S由供应商号、供应商名、状态、城市组成; 零件表P 由零件号、零件名、颜色、重量组成; 工程项目表J由项目号、项目名、城市组成;
供应情况表SPJ由供应商号、零件号、项目号、供应数量组成; (1)用关系代数查询没有使用天津供应商生产的红色零件的工程号;(3分)
(2) 用关系代数查询至少使用了供应商S1所供应的全部零件的工程号JNO; (3分)
31
(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. 设有关系STUDENT(S#,SNAME,SDEPT,MNAME,CNAME,GRADE),(S#,CNAME)为
候选码,设关系中有如下函数依赖: (S#,CNAME)→SNAME,SDEPT,MNAME
S#→SNAME,SDEPT,MNAME (S#,CNAME)→GRADE SDEPT→MNAME 试求下列问题:
(1)关系STUDENT属于第几范式?(3分)
(2)如果关系STUDENT不属于BCNF,请将关系STUDENT逐步分解为巧
BCNF。(7分)
要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
32
五、综合题(15分) 得 分
某医院病房管理系统中,包括四个实体型,分别为: 科室:科名,科地址,科电话 病房:病房号,病房地址
医生:工作证号,姓名,职称,年龄 病人:病历号,姓名,性别 且存在如下语义约束:
① 一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个
科室;
② 一个医生可负责多个病人的诊治,一个病人的主管医生只有一个; ③ 一个病房可入住多个病人,一个病人只能入住在一个病房。 注意:不同科室可能有相同的病房号。 完成如下设计:
(1)画出该医院病房管理系统的E-R图;(5分) (2)将该E-R图转换为关系模型;(5分)
(要求:1:1和1:n的联系进行合并)
(3)指出转换结果中每个关系模式的主码和外码。(5分)
33
试题四参考答案与评分标准
一、选择题(每题1.5分) 1.A 2.C 3.D 4.B 5.C 6.D 7.B 8.B 9.D 10.C 11.C 12.B 13.D 14.D 15.B 16.B 17.B 18.C 19.C 20.A 二、填空题(每题1分) 1. 数据库系统 2. 完整性约束 3. CLUSTER INDEX 4. IN 5. 三 6. 聚集 7. 死锁 8. 物理 9. 封锁 10. 系统故障 三、简答题(每题5分) 1、参考答案:
答: 连接运算符是“=”的连接运算称为等值连接。它是从关系R与S的广义笛卡尔积中
选取A,B属性值相等的那些元组,即等值连接为:R∞S={trts| tr∈R∧ts∈S∧tr[A]=ts[B]} A=B
自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。 2、参考答案:
答:视图是从一个或几个基本表导出的表,它与基本表不同,是一个虚表,数据库中只存
放视图的定义,而不存放视图对应的数据,这些数据存放在原来的基本表中,当基本表中的数据发生变化,从视图中查询出的数据也就随之改变。视图一经定义就可以像基本表一样被查询、删除,也可以在一个视图之上再定义新的视图,但是对视图的更新操作有限制。
3、参考答案:
答:事务具有四个特性,即ACID特性: (1)原子性:事务中包括的所有操作要么都做,要么都不做。 (2)一致性:事务必须使数据库从一个一致性状态变到另一个一致性状态。 (3)隔离性:一个事务内部的操作及使用的数据对并发的其他事务是隔离的。 (4)持续性:事务一旦提交,对数据库的改变是永久的。 四、设计题 1、参考答案:
(1)πJno(J)- πJno (City='天津' (S)
SPJ
Color='红' (P))
(2)πPno,Jno(SPJ)÷πPno (Sno='S1' (SPJ)) (3)RANGE P PX
GET W (SPJ.Sno): SPJ.Jno='J1'∧PX(SPJ.Pno=PX.Pno∧PX..Color='红')) (4)CREATE TABLE S (Sno CHAR(6) PRIMARY KEY, Sname CHAR(10), Status INT, City CHAR(20));
(5)SELECT Pname,TotalQty FROM (SELECT Pno,SUM(Qty) TotalQty FROM SPJ WHERE
Jno='J1' GROUP BY Pno) X,P WHERE P.Pno=X.Pno;
(6)SELECT Jno FROM J WHERE Jno NOT IN (SELECT Jno FROM SPJ WHERE Sno IN
34
(SELECT Sno FROM S WHERE City='天津'));
或:SELECT Jno FROM J WHERE NOT EXISTS (SELECT * FROM SPJ,S WHERE
SPJ.Sno=S.Sno AND SPJ.Jno=J.Jno AND City='天津'); 或:SELECT Jno FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.Jno=J.Jno
AND EXISTS (SELECT * FROM S WHERE S.Sno=SPJ.Sno AND City='天津')); (7)UPDATE P SET Color='蓝' WHERE Color='红'; (8)INSERT INTO SPJ VALUES('S2','P4','J6',400) 评分标准:
第(1)、(2)、(5)、(6)每题3分,其余每题2分,书写是否正确、规范、合理需酌情处理,能正确写出大体结构给一半分,局部漏写、错写视情节扣分,大体结构不正确一律不给分。 2、参考答案:
(1)关系STUDENT是1NF,因为F中存在非主属性 SNAME,SDEPT,MNAME对侯选码(S#,CNAME)的部分函数依赖。 (2)首先消除部分函数依赖(S#,CNAME)→SNAME,SDEPT,MNAME
将关系分解为:
R1(S#,SNAME,SDEPT,MNAME),
F1 = { S#→SNAME,SDEPT,MNAME}
R2(S#,CNAME,GRADE),F2={(S#,CNAME)→GRADE}
在关系R1中存在非主属性对候选码的传递函数依赖S#→SDEPT,所以将R1进一步分解:
R11(S#,SNAME,SDEPT) ,F11 = { S#→SNAME,SDEPT} R12(SDEPT,MNAME) ,F12 = { SDEPT→MNAME}
在R2,R11,R12关系模式中函数依赖都是非平凡的,并且决定因素均是候选码,所以上述三个关系模式均是BCNF。
评分标准:
(1)回答R是1NF并正确说明理由3分,没有正确回答出理由扣1分。
(2)两次分解各3分,每步所得的两个关系模式各1.5分;正确回答消除什么类型的函
数依赖和正确说明所得的三个关系模式是BCNF各1分。
五、综合题 参考答案:
(1)本题的E-R图如下图所示。
病房号 病房地址 科名 1 组成 科地址 科电话 病房 1 入住 n 病人 n 科室 1 拥有 n n 诊治 35 1 医生 病历号 姓名 性别 工作证号 姓名 职称 年龄
(2)转化后的关系模式如下: 科室(科名,科地址,科电话) 病房(病房号,病房地址,科名)
医生(工作证号,姓名,职称,年龄,科名)
病人(病历号,姓名,性别,主管医生,病房号,科名) (3)每个关系模式的主码、外码如下: 科室:主码是科名;
病房:主码是科名十病房号,外码是科名; 医生:主码是工作证号,外码是科名;
病人:主码是病历号,外码是科名十病房号。 评分标准:
(1)四个联系各0.5分,名称一定可表达联系含义,联系类型错误不给分;四个实体型
属性漏写、错写扣0.5分,漏写一个实体型扣1 分。
(2)转化后的科室关系模式、病房关系模式、医生关系模式各1分,有一个属性不正确
均不给分,病人关系模式2分,漏写一个属性扣1分, (3)病房关系模式主码1 分、病人关系模式外码1.5分,其余各0.5分。
36
数据库原理-期末考试复习题五
一、单项选择题
(本大题共10小题,每小题2分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要 求的,错选、多选或未选均无分。
1. 模式的逻辑子集通常称为( )
A.外模式 B.内模式 C.概念模式 D.逻辑模式
2. 已知两个关系如下:
R
A 1 2 3 B b1 b2 b1 C c1 c2 c1 S
D d1 d2 d3 E e1 e2 e1 A 1 1 2 得 分 假设R的主键是A,S的主键是D,在关系S的定义中包含外键子句: “FOREIGN KEY (A) REFERENCES R(A) ON DELETE NO ACTION”, 下列SQL语句不能成功执行的是( ) A.DELETE FROM R WHERE A=2 B.DELETE FROM R WHERE A=3 C.DELETE FROM S WHERE A=1 D.DELETE FROM S WHERE A=2
3. 在SQL中,与“NOT IN”等价的操作符是( )
A.<>ALL B.<>SOME C.=SOME D.=ALL
4. 将E-R模型转换成关系模型,属于数据库的( )
A.需求分析 B.概念设计 C.逻辑设计 D.物理设计
5. 设有一个关系:DEPT(DNO,DNAME),如果要找出倒数第三个字母为W,并且至少
包含4个字母的DNAME,则查询条件子句应写成WHERE DNAME LIKE( ) A.’_ _ W _ %’ B.’_ % W _ _’ C.’_ W _ _’ D.’_ W _ %’
6. 有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这
一规则属于( )。
A.实体完整性约束 B.参照完整性约束 C.用户自定义完整性约束 D.关键字完整性约束
7. 已知关系R如图1所示,可以作为R主码的属性组是( )。
R A B C D
37
1 1 2 1 1 3 2 3 4 3 4 5 4 5 6 4 3 4 3 4 7 4 5 6 图1
A. ABC B. ABD C. ACD
D. BCD
8. 已知成绩关系如图2所示。
执行SQL语句:
SELECT COUNT(DISTINCT学号) FROM成绩
WHERE分数>60
查询结果中包含的元组数目是( )
成绩 学号 课程号 分数 S1 C1 80 S1 C2 75 S2 C1 null S2 C2 55 S3 C3 90 图2 A. 1 B. 2
C. 3
D. 4
9.设有关系R和关系S进行如图3所示的运算,则运算结果中含有元组的数目是(R S
A B C D E 1 2 3 5 6 4 5 6 7 8 7 8 9 9 10 图3
A. 6 B. 7
C. 8
D. 9
10. 已知关系:厂商(厂商号,厂名) PK=厂商号
产品(产品号,颜色,厂商号) PK=产品号,FK=厂商号 假设两个关系中已经存在如图4所示元组:
厂商 产品
38
)
厂商号 C01 C02 C03 厂名 宏达 立仁 广源
产品号 P01 P02 颜色 厂商号 红 黄 C01 C03 图4
若再往产品关系中插入如下元组:
I(P03,红,C02) II(P01,蓝,C01) III(P04,白,C04) IV(P05,黑,null) 能够插入的元组是( ) A. I,II,IV B. I,III C. I,II D. I,IV 二、填空题
(本大题共10小题,每小题2分,共20分)错填、不填均无分。 得 分
1. 数据管理经过了人工管理、文件系统和 三个发展阶段。
2. 关系中主码的取值必须唯一且非空,这条规则是 完整性规则。
3. 关系代数中专门的关系运算包括: 、投影、连接和除法。
4. SQL语言提供数据定义、 、数据控制等功能。
5. 在SELECT语句查询中,要去掉查询结果中的重复记录,应该使用 关键字。
6. 在DBMS的授权子系统中,授权和回收权限的语句分别是____________和REVOKE语句。
7. 从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据冗余
度大、修改异常、插入异常和______________。
8. 如果两个实体之间具有m:n联系,则将它们转换为关系模型的结果是_________个表。
9. 若有关系模式R(A,B,C)和S(C,D,E),SQL语句
SELECT A, D FROM R, S WHERE R.C=S.C AND E = '80' ; 对应的关系代数表达式是 。 10. SQL语言中,删除基本表的语句是 ,删除数据的语句是 。
三、简答题
(本大题共5小题,每小题4分,共20分) 得 分 1. 数据模型的三大要素是什么?
2. 数据库设计的基本步骤是什么?
39
3. 什么是事务?事务具有哪些特性?
4. 简述数据库并发操作通常会带来哪些问题。
5. 简述系统故障时的数据库恢复策略。
四、设计题 得 分 (本大题共4小题,每小题5分,共20分)
设有关系EMP(ENO,ENAME,SALARY,DNO),其中各属性的含义依次为职工号、姓名、工资和所在部门号,以及关系DEPT(DNO,DNAME,MANAGER),其中各属性含义依次为部门号、部门名称、部门经理的职工号。
1. 试用SQL语句完成以下查询:
列出各部门中工资不低于600元的职工的平均工资。
2. 写出“查询001号职工所在部门名称”的关系代数表达式。
3. 请用SQL语句将“销售部”的那些工资数额低于600的职工的工资上调10%。 4. 有如下关系代数表达式
πENO(EMP(MANAGER=’001’(DEPT))) 请将其转化成相应的SQL语句。
40
五、综合题
得 分 (本大题共2小题,每小题10分,共20分)
1. 设某商业集团数据库中有一关系模式R如下:
R (商店编号,商品编号,数量,部门编号,负责人) 如果规定:
(1)每个商店的每种商品只在一个部门销售; (2)每个商店的每个部门只有一个负责人; (3)每个商店的每种商品只有一个库存数量。 试回答下列问题:
(1)根据上述规定,写出关系模式R的基本函数依赖;(2分) (2)找出关系模式R的候选码;(2分)
(3)试问关系模式R最高已经达到第几范式?为什么?(2分) (4)如果R不属于3NF,请将R分解成3NF模式集。(4分)
2. 设有商店和顾客两个实体,“商店”有属性商店编号、商店名、地址、电话,“顾客”有属
性顾客编号、姓名、地址、年龄、性别。假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和日期,而且规定每个顾客在每个商店里每天最多消费一次。试画出E-R图,注明属性和联系类型,并将E-R模型转换成关系模式,要求关系模式主码加下划线表示。(E-R模型4分,关系模型6分)
41
试题五参考答案与评分细则
一、单项选择题(共10小题,每小题2分,共20分)
2 3 4 5 6 7 8 9 10 题号 1 答案 A A A C B C B B A D 二、填空题(共10小题,每小题2分,共20分)。 1. 数据库系统
2. 实体 4. _数据操纵_____ 6. _ GRANT__ _ 8. __ 3__
3. __ 选择 __ 5. __ DISTINCT _ 7. _ 删除异常 __ 9.πA,D(σE='80'(RS))
10. DROP _DELETE
三、简答题(共5小题,每小题4分,共20分)。 1. 数据结构、数据操作、完整性约束。(错一个扣1分,全错不得分)
2. 需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库运行和维护。(错一个扣0.5分,全错不得分)
3. 事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。(2分)事务具有原子性、一致性、隔离性和持续性等特性。(每个特性0.5分)
4. 丢失修改、不可重复读、读“脏”数据。(错一个扣1分,全错不得分)
5.(1)正像扫描日志文件,找出在故障发生前已经提交的事务,将其事务标识记入REDO队列。同时找出故障发生时尚未完成的事务,将其事务标识记入UNDO队列。(2)对UNDO队列中的各个事务进行撤销处理。(3)对REDO队列中的各个事务进行重做处理。(错一个扣1.5分,全错不得分)
四、设计题(共4小题,每小题5分,共20分)。
1. SELECT DNO, AVG (SALARY) (1分) FROM EMP(1分)
WHERE SALARY>=600(1分) GROUP BY DNO(2分)
(说明:WHERE子句与GROUP BY子句顺序颠倒的,扣1分。)
2. πDNAME( ENO=’001’(EMP)DEPT)(πDNAME1分,ENO=’001’ 1分,(EMP)DEPT3分)
或
πDNAME( ENO=’001’(EMPDEPT)) (πDNAME1分,ENO=’001’ 1分,(EMPDEPT)3分) 3. UPDATE EMP
SET SALARY=SALARY*1.1
42
WHERE ENO IN (2分)
( SELECT ENO
FROM EMP, DEPT
WHERE EMP.DNO=DEPT.DNO AND DNAME=’销售部’ AND SALARY<600
)(3分)
4.SELECT EMP.ENO
FROM EMP, DEPT(2分)
WHERE EMP.DNO=DEPT.DNO
AND DEPT.MANAGER=‘001’(3分)
五、综合题(共2小题,每小题10分,共20分)。
1. 答:(1)有三个函数依赖:
(商店编号,商品编号) →部门编号 (商店编号,部门编号) →负责人 (商店编号,商品编号) →数量。(2分,错、漏一个扣1分) (2)R的候选码是 (商店编号,商品编号)。(2分) (3)R最高达到2NF(1分),因为R中存在着非主属性“负责人”对候选码 (商店编号、
商品编号)的传递函数依赖,所以R属于2NF,但R不属于3NF。(1分) (4)将R分解成:R1 (商店编号,商品编号,数量,部门编号) (2分)
R2 (商店编号,部门编号,负责人) (2分)
2.
地址 顾客编号 姓名 年龄 性别 顾客
m
消费金额 购物
n 日期
商店
商店编号 商店名 地址 电话
(E-R模型4分,两个实体型的属性漏写一个扣0.5分,购物联系的两个属性漏写一个扣1分,联系类型错扣1分)
顾客(顾客编号,姓名,地址,年龄,性别) 商店(商店编号,商店名,地址,电话)
购物(顾客编号,商店名称,日期,消费金额)
(关系模型6分,3个关系模式各2分,主码错一个扣1分)
43
数据库原理-期末考试复习题六
一、单项选择题
(本大题共10小题,每小题2分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要 求的,错选、多选或未选均无分。
1. DB、DBMS和DBS三者之间的关系是( )。
A.DB包括DBMS和DBS B.DBS包括DB和DBMS C.DBMS包括DB和DBS D.不能相互包括
2. 对数据库物理存储方式的描述称为( )
A.外模式 B.内模式 C.概念模式 D.逻辑模式
3. 在数据库三级模式间引入二级映象的主要作用是( )
A.提高数据与程序的独立性
B.提高数据与程序的安全性
得 分 C.保持数据与程序的一致性 D.提高数据与程序的可移植性
4. 视图是一个“虚表”,视图的构造基于( )
A.基本表 B.视图 C.基本表或视图 D.数据字典
5. 关系代数中的π运算符对应SELECT语句中的以下哪个子句?( )
A.SELECT B.FROM C.WHERE D.GROUP BY
6. 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,
从职员到部门的联系类型是( ) A.多对多 B.一对一 C.多对一 D.一对多
7. 如何构造出一个合适的数据逻辑结构是( )主要解决的问题。 A.关系系统查询优化 B.数据字典 C.关系数据库规范化理论 D.关系数据库查询
8. 将E-R模型转换成关系模型,属于数据库的( )。 A. 需求分析 B. 概念设计
C. 逻辑设计 D. 物理设计
9. 事务日志的用途是( )
A. 事务处理 B. 完整性约束 C. 数据恢复 D. 安全性控制
10.如果事务T已在数据R上加了X锁,则其他事务在数据R上( )
A. 只可加X锁 B. 只可加S锁 C. 可加S锁或X锁 D. 不能加任何锁
二、填空题 得 分 (本大题共10小题,每小题2分,共20分)错填、不填均无分。
44
1. 数据库的逻辑数据独立性是由 映象提供的。
2. 关系代数中专门的关系运算包括:选择、投影、连接和_________。
3. 设有学生表S(学号,姓名,班级)和学生选课表SC(学号,课程号,成绩),为维护数据一
致性,表S与SC之间应满足 完整性约束。
4. 当数据库被破坏后,如果事先保存了数据库副本和 ,就有可能恢复数据库。
5. 如果一个满足1NF关系的所有属性合起来组成一个关键字,则该关系最高满足的范式是
(在1NF、2NF、3NF范围内)。
6. 设关系模式R(A,B,C,D),函数依赖集F={AB→C,D→B},则R的候选码为 。
7. 从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据冗余
度大、插入异常、______________和删除异常。
8. 并发控制的主要方法是 机制。
9. 若有关系模式R(A,B,C)和S(C,D,E),SQL语句
SELECT A, D FROM R, S WHERE R.C=S.C AND E = '80' ; 对应的关系代数表达式是 。 10. 分E-R图之间的冲突主要有属性冲突、 、结构冲突三种。
三、简答题
得 分 (本大题共4小题,每小题5分,共20分)
1. 说明视图与基本表的区别和联系。
2. 简述事务的特性。
3. 试述关系模型的参照完整性规则。
4. 简述系统故障时的数据库恢复策略。
45
四、设计题
得 分 (本大题共5小题,每小题4分,共20分)
现有关系数据库如下:
学生(学号,姓名,性别,专业) 课程(课程号,课程名,学分) 学习(学号,课程号,分数)
分别用关系代数表达式和SQL语句实现下列1—5小题(注意:每小题都要分别写出关系代数表达式和SQL语句!!!每小题关系代数表达式2分,SQL语句2分):
1. 检索所有选修了课程号为“C112”的课程的学生的学号和分数; 2. 检索“英语”专业学生所学课程的信息,包括学号、姓名、课程名和分数;
3. 检索“数据库原理”课程成绩高于90分的所有学生的学号、姓名、专业和分数; 4. 检索没学课程号为“C135”课程的学生信息,包括学号,姓名和专业;
5. 检索至少学过课程号为“C135”和“C219”的课程的学生的信息,包括学号、姓名和专业。
五、综合题 得 分 (本大题共2小题,每小题10分,共20分)
1. 现有如下关系模式:借阅(图书编号,书名,作者名,出版社,读者编号,读者姓名,借
阅日期,归还日期),基本函数依赖集F={图书编号→(书名,作者名,出版社),读者编号→读者姓名,(图书编号,读者编号,借阅日期)→归还日期} (1)读者编号是候选码吗?(2分) (2)写出该关系模式的主码。(2分)
(3)该关系模式中是否存在非主属性对码的部分函数依赖?如果存在,请写出一个。(2
分)
(4)该关系模式满足第几范式?并说明理由。(4分)
46
3. 某工厂生产多种产品,每种产品由不同的零件组装而成,有的零件可用在不同的产品上。
产品有产品号和产品名两个属性,零件有零件号和零件名两个属性。根据语义设计E-R模型,并将E-R模型转换成关系模式,要求关系模式主码加下划线表示。(E-R模型4分,关系模型6分)
47
试题六参考答案与评分细则
一、单项选择题(共10小题,每小题2分,共20分)
2 3 4 5 6 7 8 9 10 题号 1 答案 B B A C A C C C C D 二、填空题(共10小题,每小题2分,共20分)。 1. 外模式/模式 3. __ 参照 __ 5. __ 3NF _
2. 除 4. 日志文件_____ 6. _ AD __ _ 8. _ 封锁__
7. _ 修改异常 __ 9.πA,D(σE='80'(RS))
10. 命名冲突
三、简答题(共4小题,每小题5分,共20分)。
1. 答:视图是从一个或几个基本表导出的表,它与基本表不同,它是一个虚表,(2分)数据库中只存放视图的定义,而不存放视图对应的数据,这些数据存放在原来的基本表中,当基本表中的数据发生变化,从视图中查询出的数据也就随之改变(2分)。视图一经定义就可以像基本表一样被查询、删除,也可以在一个视图之上再定义新的视图,但是对视图的更新操作有限制(1分)。
2. 答:事务具有四个特性,即ACID特性:(1分) (1)原子性:事务中包括的所有操作要么都做,要么都不做。(1分)
(2)一致性:事务必须使数据库从一个一致性状态变到另一个一致性状态。(1分) (3)隔离性:一个事务内部的操作及使用的数据对并发的其他事务是隔离的。(1分) (4)持续性:事务一旦提交,对数据库的改变是永久的。(1分)
3. 答:参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系)(2分),则对于R中每个元组在F上的值必须为:取空值(F的每个属性值均为空值)(1.5分)或者等于S中某个元组的主码值(1.5分)。 4. 答:正像扫描日志文件,找出在故障发生前已经提交的事务,将其事务标识记入REDO队列,同时找出故障发生时尚未完成的事务,将其事务标识记入UNDO队列(2分);对UNDO队列中的各个事务进行撤销处理(1.5分);对REDO队列中的各个事务进行重做处理。(1.5分) 四、设计题(共5小题,每小题关系代数式2分,SQL语句2分,共20分)。 1.SQL语句:
SELECT 学号,分数 FROM 学习 WHERE 课程号=’C112’
48
(SELECT 学号,分数 FROM 学习1分,WHERE 课程号=’C112’1分)
关系代数:
π学号,分数(课程号=’C112’(学习))
(π学号,分数1分,课程号=’C112’(学习)1分。
2. SQL语句:
SELECT 学生.学号,姓名,课程名,分数
FROM 学生,学习,课程 (1分)
WHERE 学习.学号=学生.学号 AND 学习.课程号=课程.课程号 AND 专业=’英
语’ (1分)
关系代数:
π学号,姓名,课程名,分数(π学号,姓名(专业=’英语’(学生))学习π课程号,课程名(课程))
(π学号,姓名,课程名,分数1分,π学号,姓名(专业=’英语’(学生))学习π课程号,课程名(课程)1分)
3. SQL语句:
SELECT 学生.学号,姓名,专业,分数
FROM 学生,学习,课程 (1分)
WHERE 学生.学号=学习.学号 AND 学习.课程号=课程.课程号 AND分数>90
AND 课程名=‘数据库原理’ (1分)
关系代数:
π学号,姓名,专业,分数(π学号,姓名,专业(学生)(分数>90(学习))π课程号,课程名( 课程名=’数据库原理’(课程))) (π学号,姓名,专业,分数1分,π学号,姓名,专业(学生)(分数>90(学习))π课程号,课程名(课程名=’数据库原理’(课
程)) 1分)
4.SQL语句:
SELECT 学号,姓名,专业
FROM 学生
WHERE 学号 NOT IN (1分)
(SELECT 学号 FROM 学习 WHERE 课程号=‘C135’) (1分)
关系代数:
(π学号(学生)-π学号(课程号=‘C135’ (学习)))(π学号,姓名,专业(学生)
(π学号(学生)-1分,π学号(课程号=‘C135’ (学习)))(π学号,姓名,专业(学生)1分)
5.SQL语句:
SELECT 学号,姓名,专业 FROM 学生 WHERE 学号 IN (1分)
(SELECT X1.学号 FROM 学习 X1,学习 X2 WHERE X1.学号=X2.学号 AND X1.课程号=‘C135’AND X2.课程号=‘C219’)(1分)
关系代数:
(π学号,课程号(学习)÷π课程号(课程号=‘C135’∨课程号=‘C219’ (课程)))π学号,姓名,专业(学生)
49
(π学号,课程号(学习)÷π课程号(课程号=‘C135’∨课程号=‘C219’ (课程))1分,π学号,姓名,专业(学生)1分)
五、综合题(共2小题,每小题10分,共20分)。 1. 答:(1)不是(2分)。 (2)(图书编号,读者编号,借阅日期)(2分) (3)存在(1分)。(图书编号,读者编号,借阅日期)→书名、(图书编号,读者编号,
借阅日期)→作者名、(图书编号,读者编号,借阅日期)→出版社、(图书编号,读者编号,借阅日期)→读者姓名(1分,四个函数依赖任选一个即可) (4)1NF。因为存在非主属性对码的部分函数依赖。 2. 产品名 产品号 零件号 零件名 产品 m 组装 n 零件 (E-R模型4分,两个实体型属性少1个扣0.5分,联系类型错扣1分)
产品(产品号,产品名) 零件(零件号,零件名) 组装(产品号,零件号)
(关系模型6分,3个关系模式各2分,主键错
50
数据库原理-期末考试复习题七
一、单项选择题 得 分 (本大题共20小题,每小题2分,共40分)
在每小题列出的四个备选项中只有一个是符合题目要 求的,错选、多选或未选均无分。
1. 在数据库系统中,负责监控数据库系统的运行情况,及时处理运行过程中出现的问题,
这是( )人员的职责 A.数据库管理员 B.系统分析员 C.数据库设计员 D.应用程序员
2. 在数据库三级模式中,模式的个数( )
A.只有一个 B.可以有任意多个 C.与用户个数相同 D.由设置的系统参数决定
3. 在关系数据库系统中,当关系的类型改变时,用户程序也可以不变。这是( )
A.数据的物理独立性 B.数据的逻辑独立性 C.数据的位置独立性 D.数据的存储独立性
4. 设关系R和S具有相同的目,且它们相对应的属性的值取自同一个域,则R-(R-S)等于
( ) A.R∪S B.R∩S C.R×S D.R÷S
5. 在关系代数中,从两个关系的笛卡尔积中选取它们属性间满足一定条件的元组的操作,称
为( ) A.并 B.选择 C.自然连接 D.θ连接
试题(6)~(8)基于“学生—选课—课程”数据库中的三个关系是: S(S#,SNAME,SEX,AGE),SC(S#,C#,GRADE),C(C#,CNAME,TEACHER)
6. 若要求查找“由张劲老师执教的数据库课程的平均成绩、最高成绩和最低成绩”,将使用
关系( )。
A.S和SC B.SC和C C.S和C D.S、SC和C
7. 若要求查找‘李’姓学生的学生号和姓名,正确的SQL语句是( )。
A. SELECT S#,SNAME FROM S WHERE SNAME=’李%’ B. SELECT S#,SNAME FROM S WHERE SNAME LIKE ’李%’
C. SELECT S#,SNAME FROM S WHERE SNAME=’%李%’ D. SELECT S#,SNAME FROM S WHERE SNAME LIKE ’%李%’
8. 设S_AVG(SNO,AVG_GRADE)是一个基于关系SC定义的学生号和他的平均成绩的视图。
下面对该视图的操作语句中,( )是不能正确执行的。
I.UPDATE S_AVG SET AVG_GRADE=90 WHERE SNO=’2004010601’ II.SELECT SNO, AVG_GRADE FROM S_AVG WHERE SNO=’2004010601’;
A. 仅I B. 仅II C. 都能 D. 都不能
51
试题(9)~(11)是基于如下的关系R和S,且属性A是关系R的主码,属性B是关系S的主码。
R S
B E A B C b1 3 a1 b1 5 b2 7 a2 b2 6
b3 10 a3 b3 8
b4 2 a4 b4 12 b5 2
9. 若关系R和S的关系代数操作结果如下,这是执行了( )。
A R.B C S.B E a1 b1 5 b2 7 a1 b1 5 b3 10 a2 b2 6 b2 7 a2 b2 6 b3 10 a3 b3 8 b3 10
A. R ∞ S B. R ∞ S C. R ∞ S D. R∞S
C 10. 若关系R和S的关系代数操作的结果如下,这是执行了( )。 A B C E a1 b1 5 3 a2 b2 6 7 a3 b3 8 10 a4 b4 12 2 A. R ∞ S B. R ∞ S C. R ∞ S D. R∞S C 11. 如果要在关系R中插入一个元组,下面( )元组不能插入。 A.(a2,b5,7) B.(a6,b5,3) C.(a7,b7,8) D.(a8,b4,1) 12. 设有关系R=(A,B,C),与SQL语句select distinct A,C from R where B=5 等价的关系代数表 达式是( )。 I. πA,C(σB=5(R)) II. σB=5(πA,C (R)) A.都等价 B.仅I C.仅II D.都不等价 13. 并发操作有可能引起下述( )问题。 I.丢失更新 II.不可重复读 III.读脏数据 A.仅I和II B.仅I和III C.仅II和III D.都是 14.设有两个事务T1和T2,其并发操作序列如下表所示。则下面说法中正确的是( ) 52 步骤 T1 读A=100 1 2 A←A+10写3 回 4 A.该操作序列不存在问题 C.该操作序列不能重复读 T2 读A=100 A←A-10写回 B.该操作序列丢失更新 D.该操作序列读出“脏”数据 试题(15)~(17)是基于下列描述, 关系模式R(A,B,C,D,E),根据语义有如下函数依赖集:F={A→C,BC→D,CD→A,AB→E}。 15.下列属性组中的哪个(些)是关系R的候选码?( ) I. (A,B) II. (A,D) Ⅲ. (B,C) Ⅳ. (C,D) Ⅴ.(B,D) A.仅Ⅲ B.I和Ⅲ C.I、II、Ⅳ D.II、Ⅲ、Ⅴ 16. 关系模式R的规范化程度最高达到( )。 A.1NF B.2NF C.3NF D.BCNF 17. 现将关系模式R分解为两个关系模式R1(A,C,D),R2(A,B,E),那么这个分解 ( )。 A.不具有无损连接性且不保持函数依赖 B.具有无损连接性且不保持函数依赖 C.不具有无损连接性且保持函数依赖 D.具有无损连接性且保持函数依赖 18. 存取方法设计是数据库设计的( )阶段的任务。 A.需求分析 B.概念结构设计 C.逻辑结构设计 D.物理结构设计 19.以下关系E-R模型向关系模型转换的叙述中,( )是不正确的? A.一个1:1联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并 B.一个1:n联系可以转换为一个独立的关系模式,也可以与联系的n端实体所对应的关系模式合并 C.一个m:n联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并 D.三个或三个以上的实体间的多元联系转换为一个关系模式 20.下列SQL Server语句中出现语法错误的是( )。 A.DECLARE @Myvar INT B.SELECT * FROM [AAA] C.CREATE DATABASE AAA D.DELETE * FROM AAA 53 二、填空题 得 分 (本大题共10空,每空2分,共20分)错填、不填均无分。 1. 根据参照完整性规则,外码的值或者等于以此码为主码的关系中某个元组主码的值,或者 取 。 2. 在SQL语言中,使用____________语句进行授权。 3. 有关系R(A,B,C)和关系S(A,D,E,F)。如果将关系代数表达式 πR.A, R.B, S.D, S.F (R ∞ S ) 用SQL的查询语句来表示,则有: SELECT R.A,R.B,S.D,S.F FROM R,S WHERE____________。 4. “向emp表增加一个telephone列,其数据类型为11个字符型”的SQL语句是: ALTER TABLE emp ___________ 。 5. 若关系模式R∈1NF,且对于每一个非平凡的函数依赖X→Y,都有X包含码,则R最高 一定可以达到___________。 6. 当对视图进行UPDATE、INSERT、DELETE操作时,为了保证被操作的行满足视图定义 中子查询语句的谓词条件,应在视图定义语句中使用可选择项______________。 7. SQL语言支持数据库的外模式、模式和内模式结构。外模式对应于视图和部分基本表,模 式对应于______________,内模式对应于存储文件。 8. 设一个关系A具有a1个属性和a2个元组,关系B具有b1个属性和b2个元组,则关系 A×B具有______________个属性和______________个元组。 9. 函数RIGHT(’abcdef’,2)的结果是______________。 得 分 三、计算题 (本大题共2小题,每小题5分, 共 10分) 得 分 1. 已知关系R、S、T、U如下所述,求关系代数表达式R×S ÷T-U 的运算结果。 R S T U A B B C C C 1 a a x x x 2 b c z y y 3 a 3 b 4 a 54 2. 已知关系模式R,其中U={A,B,C,D,E};F={AB→C,B→D,C→E,EC →B,AC→B}。求(AB)F+ 。 得 分 四、实际应用题(20分) 某企业集团有若干工厂,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂按照固定的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工 作,工厂聘用职工有聘期和工资。工厂的属性有工厂编号、厂名、地址,产品的属性有产品 编号、产品名、规格,职工的属性有职工号、姓名。 (1)根据上述语义画出E-R图(集团实体不用画出);(8分) (2)将该E-R模型转换为关系模型;(5分) (要求:1:1和1:n的联系进行合并) (3)指出转换结果中每个关系模式的主码和外码。(7分) 五、编程题(10分) 得 分 假设存在名为AAA的数据库,包括S(S# char(8),SN varchar(8),AGE int,DEPT varchar(20),DateT DateTime)和SC(S# char(8),CN varchar(10),GRADE numeric(5,2))两张表。请按下列要求写一存储过程PROC3。 要求为:修改SC表中学号为@s1的值、课程名为@c1的值的学生成绩为@g1的值。 55 试题七参考答案与评分细则 一、单项选择题(共20小题,每小题2分,共40分) 2 3 4 5 6 7 8 9 题号 1 答案 A A B B D B B A A 题号 11 12 13 14 15 16 17 18 19 答案 C B D B B C A D C 二、填空题(共10空,每空2分,共20分)。 1. 空值 注:或NULL 或空 2. GRANT 3. R.A=S.A 10 D 20 D 4. ADD telephone CHAR(11) 注:字母大、小写均可 5. BCNF 6. WITH CHECK OPTION 7. 基本表 注:或全体基本表 8. a1+b1 、 a2*b2 9. ef 三、计算题(共2小题,每小题5分,共10分) 参考答案: R ×S R ×S ÷ T R ×S ÷ T-U A 1 1 2 2 3 3 B B a a b b a a b b a C x y x y x y x y x 56 C x y B a C y a a 3 3 4 评分标准: 正确算出R ×S 2分;正确算出R ×S ÷ T 2分;正确算出R ×S ÷ T-U 1分。 1. 参考答案: 解 设X(0)=AB; ① 计算X(1):逐一的扫描F集合中各个函数依赖,找左部为A,B或AB的函数依赖。得到两个:AB→C,B→D。 于是X(1)=AB∪CD=ABCD。 ② 因为X(0)≠ X(1),所以再找出左部为ABCD子集的那些函数依赖,又得到 AB→C,B→D,C→E,AC→B, 于是X(2)=X(1)∪BCDE=ABCDE。 ③ 因为X(2)=U,算法终止 所以(AB)F+ =ABCDE。 评分标准: 正确算出X(1)=AB∪CD=ABCD2分;正确算出X(2)=X(1)∪BCDE=ABCDE 2分;说明(AB)+ F =ABCDE 1分。 四、实际应用题(20分) 参考答案: (1)本题的E-R图如下图所示。 工产编号 厂名 地址 产品编号 产品名 规格 n m 产品 工厂 生产 1 计划数量 聘用 聘期 n 工资 职工 职工号 姓名 (2)转化后的关系模式如下: 工厂(工厂编号,厂名,地址) 产品(产品编号,产品名,规格) 职工(职工号,姓名,工产编号,聘期,工资) 生产(工产编号,产品编号,计划数量) (3)每个关系模式的主码、外码如下: 57 工厂:主码是工产编号,无外码; 产品:主码是产品编号,无外码; 职工:主码职工号,外码是工厂编号; 生产:主码是(工产编号,产品编号), 外码是工产编号、产品编号。 评分标准: (1)三个实体型工厂、产品、职工各1分,属性漏写、错写不给分;两个联系各1分, 名称一定要表达联系含义,联系类型错误不给分,三个联系类型各1分。 (2)转化后的工厂关系模式、产品关系模式、生产关系模式各1分,有一个属性不正确 均不给分,职工关系模式2分。 (3)工厂:主码是工产编号(1分); 产品:主码是产品编号(1分); 职工:主码职工号(1分),外码是工厂编号(1分); 生产:主码是(工产编号,产品编号)(1分), 外码是工产编号(1分)、产品编号(1分)。 五、编程题(10分) 参考答案: CREATE PROCEDURE PROC3 (1分) ( @s1 char(8),@c1 varchar(10),@g1 numeric(5,2) (3个变量定义各1分) ) AS (1分) BEGIN (1分) UPDATE SC (1分) SET GRADE=@g1 (1分) WHERE S#=@s1 AND CN=@c1 (2分) END 58 数据库原理-期末考试复习题八 一、单项选择题 (本大题共20小题,每小题2分,共40分) 得 分 在每小题列出的四个备选项中只有一个是符合题目要 求的,错选、多选或未选均无分。 1. 下面列出的数据管理技术发展的三个阶段中,哪个(些)阶段没有专门的软件对数据进行 管理?( ) Ⅰ.人工管理阶段 Ⅱ.文件系统阶段 Ⅲ.数据库阶段 A.只有Ⅰ B.只有Ⅱ C.Ⅰ和Ⅱ D.Ⅱ和Ⅲ 2. 在关系数据库中,表(table)是三级模式结构中的( ) A.外模式 B.模式 C.存储模式 D.内模式 第(3)至(5)题是基于如下两个关系,其中雇员信息表关系EMP的主键是雇员号,部门信息表关系DEPT的主键是部门号 EMP 雇员号 001 010 056 101 雇员名 张 山 王宏达 马林生 赵 敏 DEPT 部门号 01 02 03 04 部门名 业务部 销售部 服务部 财务部 地址 1号楼 2号楼 3号楼 4号楼 部门号 工资 02 01 02 04 2000 1200 1000 1500 3. 若执行下面列出的操作,哪个操作不能成功执行?( ) A.从EMP中删除行(’010’, ’王宏达’, ’01’,1200) B.在EMP中插入行(’102’, ’赵敏’, ’01’,1500) C.将EMP中雇员号=’056’的工资改为1600元 D.将EMP中雇员号=’101’的部门号改为’05’ 4. 若执行下面列出的操作,哪个操作不能成功执行?( ) A.从DEPT 中删除部门号=’03’的行 B.在DEPT中插入行(’06’,’计划部’,’6号楼’) C.将DEPT中部门号=’02’的部门号改为’10’ D.将DEPT中部门号=’01’的地址改为’5号楼’ 5. 在雇员信息表关系EMP中,哪个属性是外键(foreign key)?( ) A.雇员号 B.雇员名 C.部门号 D.工资 59 6. 在SQL语言的SELECT语句中,实现投影操作的是哪个子句?( )。 A.select B.from C.where D.group by 7. SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句INSERT、 DELETE、UPDATE实现哪类功能?( )。 A. 数据查询 B. 数据操纵 C. 数据定义 D. 数据控制 8. 设关系R和关系S的基数分别是3和4,关系T是R与S的广义笛卡尔积,即:T=R×S,则 关系T的基数是( )。 A. 7 B. 9 C. 12 D. 16 9.设属性A是关系R的主属性,则属性A不能取空值(NULL)。这是( )。 A. 实体完整性规则 B. 参照完整性规则 C. 用户定义完整性规则 D. 域完整性规则 10. 在并发控制的技术中,最常用的是封锁方法。对于共享锁(S)和排他锁(X)来说,下 面列出的相容关系中,哪一个是不正确的?( )。 A. X/X:TRUE B. S/S:TRUE C. S/X:FALSE D. X/S:FALSE 11. 下面关于函数依赖的叙述中,不正确的是( )。 A.若X→Y,X→Y,则X→YZ B.若XY→Z,则X→Z,Y→Z C.若X→Y,Y→Z,则X→Z D.若X→Y,Y′Y,则X→Y′ 第(12)至(14)题基于以下的叙述:有关系模式A(C,T,H,R,S),基中各属性的含义是: C:课程 T:教员 H:上课时间 R:教室 S:学生 根据语义有如下函数依赖集: F={C→T,(H,R)→C,(H,T)→R,(H,S)→R} 12. 关系模式A的码是( )。 A.C B.(H,R) C.(H,T) D.(H,S) 13.关系模式R的规范化程度最高达到( )。 A.1NF B.2NF C.3NF D.BCNF 14.现将关系模式A分解为两个关系模式A1(C,T),A2(H,R,S),则其中A1的规范化 程度达到( ) A.1NF B.2NF C.3NF D.BCNF 15.设有两个事务T1和T2,其并发操作序列如下表所示。则下面说法中正确的是( ) 步骤 T1 T2 读A=100 1 A=A*2 60 2 3 A.该并发操作不存在问题 C.该并发操作不能重复读 读A=200 ROLLBACK 恢复A=100 B.该并发操作丢失更新 D.该并发操作读出“脏”数据 16. 并发操作有可能引起下述( )问题。 I.丢失更新 II.不可重复读 III.读脏数据 A.仅I和II B.仅I和III C.仅II和III D.都是 17. E-R模型向关系模型转换是数据库设计的( )阶段的任务。 A.需求分析 B.概念结构设计 C.逻辑结构设计 D.物理结构设计 10. SQL语言中,删除一个表的命令是( ) A. DELETE B. DROP C. CLEAR D. REMOVE 19.从E-R模型关系向关系模型转换时,一个m:n联系转换为关系模式时,该关系模式的候 选码是( )。 A.m端实体的关键字 B.m端实体的关键字 C.m端实体关键字与n端实体关键字组合 D.重新选取其他属性 20. 已知关系SPJ(S#,P#,J#,QTY),把对关系SPJ的属性QTY的修改权授予用户张三的T-SQL 语句是( )。 A. GRANT QTY ON SPJ TO 张三 B. GRANT UPDATE ON SPJ TO张三 C. GRANT UPDATE (QTY) ON SPJ TO张三 D. GRANT UPDATE ON SPJ (QTY) TO张三 二、填空题 得 分 (本大题共10空,每空2分,共20分)错填、不填均无分。 1. 在数据库的三级模式体系结构中,模式与内模式之间的映象(模式/内模式),实现了数据 的 独立性。 2. 在SQL语言中,使用____________语句收回授权。 3. 一个SQL语句原则上可产生或处理一组记录,而程序语言一次只能处理一个记录,为此 必须协调两种处理方式,这是通过使用____________机制来解决的。 4. 在“学生—选课—课程”数据库中的三个关系如下: S(S#,SNAME,SEX,AGE),SC(S#,C#,GRADE),C(C#,CNAME,TEACHER)。现要查找选修“数据库技术”这门课程的学生的学生姓名和成绩,可使用如下的SQL语句:SELECT SNAME,GRADE FROM S,SC,C WHERE CNAME=‘数据库技术’AND 61 S.S#=SC.S# AND ___________ 。 5. 数据库管理系统中,为了保证事务的正确执行,维护数据库的完整性,要求数据库系统维 护以下事务特性:___________、一致性、隔离性和持久性。 6. 在一个关系中,任何 候选码中所包含的属性都称为______________。 7. 关系模式分解的等价性标准主要有两个,分别为分解具有______________、和 ______________。 8. 如果关系模式R中所有的属性都是主属性,则R的规范化程度至少达到_____________。 9. ______________是一种特殊的存储过程,它可以在对一个表上进行INSERT、UPDATE和 DELETE操作中的任一种或几种操作时被自动调用执行。 三、设计题(10分) 得 分 假设某商业集团数据库中有一关系模式R如下: 得 分 R (商店编号,商品编号,数量,部门编号,负责人) 如果规定: (1)每个商店的每种商品只在一个部门销售; (2)每个商店的每个部门只有一个负责人; (3)每个商店的每种商品只有一个库存数量。 试回答下列问题: (1)根据上述规定,写出关系模式R的基本函数依赖; (3分) (2)找出关系模式R的候选码; (1分) (3)试问关系模式R最高已经达到第几范式?为什么? (2分) (4)如果R不属于3NF,请将R分解成3NF模式集。 (4分) 四、实际应用题(20分) 得 分 某医院病房管理系统中,包括四个实体型,分别为: 得 分 科室:科名,科地址,科电话 病房:病房号,病房地址 医生:工作证号,姓名,职称,年龄 病人:病历号,姓名,性别 且存在如下语义约束: ① 一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个 科室; ② 一个医生可负责多个病人的诊治,一个病人的主管医生只有一个; ③ 一个病房可入住多个病人,一个病人只能入住在一个病房。 注意:不同科室可能有相同的病房号。 完成如下设计: (1)画出该医院病房管理系统的E-R图;(8分) (2)将该E-R图转换为关系模型;(5分) (要求:1:1和1:n的联系进行合并) 62 (3)指出转换结果中每个关系模式的主码和外码。(7分) 五、编程题(10分) 得 分 假设存在名为AAA的数据库,包括S(S# char(8),SN varchar(8),AGE int,DEPT varchar(20),DateT DateTime)和SC(S# char(8),CN varchar(10),GRADE numeric(5,2))两张表。请按下列要求写一存储过程PROC3。 要求为:修改SC表中学号为@s1的值、课程名为@c1的值的学生成绩为@g1的值。 63 试题八参考答案与评分细则 一、单项选择题(共15小题,每小题2分,共30分) 2 3 4 5 6 7 8 9 题号 1 答案 A B D C C A B C A 题号 11 12 13 14 15 16 17 18 19 答案 B D B D D D C B C 二、填空题(共10空,每空2分,共20分)。 1. 物理 2. REVOKE 3. 游标 注:或Cursor 4. SC.C#=C.C# 注:或C.C#=SC.C# 5. 原子性 6. 主属性 7. 无损连接性 、 保持函数依赖性 8. 3NF 注:或 第三范式 9. 触发器 三、设计题(10分) 参考答案: 10 B 20 C (1)有三个函数依赖: (商店编号,商品编号) →部门编号 (1分) (商店编号,部门编号) →负责人 (1分) (商店编号,商品编号) →数量 (1分) (2)R的候选码是 (商店编号,商品编号) (1分) (3)因为R中存在着非主属性“负责人”对候选码 (商店编号、商品编号)的传递函数依 赖(1分),所以R属于2NF,R不属于3NF(1分)。 (4)将R分解成: R1 (商店编号,商品编号,数量,部门编号) (2分) R2 (商店编号,部门编号,负责人) (2分) 四、实际应用题(20分) (1)本题的E-R图如下图所示。 64 病房号 病房地址 科名 科地址 科电话 1 n 科室 病房 组成 1 1 入住 拥有 n n 1 n 医生 病人 诊治 工作证号 姓名 职称 年龄 病历号 姓名 性别 (2)转化后的关系模式如下: 科室(科名,科地址,科电话) 病房(病房号,病房地址,科名) 医生(工作证号,姓名,职称,年龄,科名) 病人(病历号,姓名,性别,主管医生,病房号,科名) (3)每个关系模式的主码、外码如下: 科室:主码是科名; 病房:主码是科名十病房号,外码是科名; 医生:主码是工作证号,外码是科名; 病人:主码是病历号,外码是科名十病房号。 评分标准: (1)四个联系各1分,名称一定要表达联系含义,联系类型错误不给分;四个实体型各 1分,属性漏写、错写不给分。 (2)转化后的科室关系模式、病房关系模式、医生关系模式各1分,有一个属性不正确 均不给分,病人关系模式2分,漏写、错写一个属性扣1分扣完2分为止。 (3)科室:主码是科名(1分); 病房:主码是科名十病房号(1分),外码是科名(1分); 医生:主码是工作证号(1分),外码是科名(1分); 病人:主码是病历号(1分),外码是科名十病房号(1分)。 五、编程题(10分) CREATE PROCEDURE PROC3 (1分) ( @s1 char(8),@c1 varchar(10),@g1 numeric(5,2) (3个变量定义各1分) ) AS (1分) BEGIN (1分) UPDATE SC (1分) SET GRADE=@g1 (1分) WHERE S#=@s1 AND CN=@c1 (2分) END 65 数据库原理-期末考试复习题九 一、单项选择题 (本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要 求的,错选、多选或未选均无分。 1. 要保证数据库的数据独立性,需要修改的是( ) A.三层模式之间的两种映射 B.模式与内模式 C.模式与外模式 D.三层模式 2. 下列四项中说法不正确的是( ) A.数据库减少了数据冗余 B.数据库中的数据可以共享 得 分 C.数据库避免了一切数据的重复 D.数据库具有较高的数据独立性 3. 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员, 从职员到部门的联系类型是( ) A.多对多 B.一对一 C.多对一 D.一对多 4. 将E-R模型转换成关系模型,属于数据库的( ) A.需求分析 B.概念设计 C.逻辑设计 D.物理设计 5. 五种基本关系代数运算是( ) A.∪,—,×,π和σ B.∪,—,,π和σ C.∪,∩,×,π和σ D.∪,∩,,π和σ 6. 下列聚合函数中不忽略空值 (NULL) 的是( )。 A.SUM (列名) B.MAX (列名) C.COUNT ( * ) D.AVG (列名) 7. SQL中,下列涉及空值的操作,不正确的是( )。 A. AGE IS NULL B. AGE IS NOT NULL C. AGE = NULL D. NOT (AGE IS NULL) 8. 已知成绩关系如表1所示。 执行SQL语句: SELECT COUNT(DISTINCT学号) FROM成绩 WHERE分数>60 查询结果中包含的元组数目是( ) 表1 成绩关系 学号 S1 S1 S2 课程号 C1 C2 C1 66 分数 80 75 null S2 S3 A. 1 C. 3 B. 2 D. 4 C2 C3 55 90 9. 在视图上不能完成的操作是( ) A. 更新视图 B. 查询 C. 在视图上定义新的基本表 D. 在视图上定义新视图 10. 关系数据模型的三个组成部分中,不包括( ) A. 完整性约束 B. 数据结构 C. 恢复 D. 数据操作 11. 假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER), 学生选课关系是SC(S#,C#,GRADE)。 要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系( ) A.S B.SC,C C.S,SC D.S,SC,C 12. 关系规范化中的删除操作异常是指( ) A.不该删除的数据被删除 C.应该删除的数据未被删除 B.不该插入的数据被插入 D.应该插入的数据未被插入 13. 从E-R模型关系向关系模型转换时,一个m:n联系转换为关系模式时,该关系模式的码 是( ) A.M端实体的码 B.N端实体的码 C.M端实体码与N端实体码组合 D.重新选取其他属性 14.已知关系R={A,B,C,D,E,F},F={A→C,BC→DE,D→E,CF→B}。则(AB)F+的 闭包是( ) A.ABCDEF B.ABCDE C.ABC D.AB 15.设有关系R(A,B,C)和S(C,D)。与SQL语句select A,B,D from R,S where R.C=S.C 等价的关系代数表达式是( ) A.σR.C=S.C(πA,B,D(R×S)) B.πA,B,D(σR,C= S.C(R×S)) C.σR.C=S.C((πA,B (R))×(πD(S))) D.σR,C=S.C(πD((πA,B(R))×S)) 二、多项选择题 得 分 (本大题共5小题,每小题2分,共10分) 在每小题列出的四个备选项中有多个是符合题目要求的,多选、少选、错选、不选均无分。 1. 对于关系模式S(Sno,Sname,Age,Dept);C(Cno,Cname,Teacher);SC(Sno, Cno,Score)。下列查询结果相同的是( ) 67 2. 某查询语句中有“%田_”语句,则可能的查询结果有( ) A.张田 C.田华 B.陈力田 D.刘田耕 A.πSname((S) σScore>60(SC)) B.πSname(σScore>60(SSC)) C.σScore>60 (πSname (S SC)) D.σScore>60 (πSname (S) (SC)) 3. 对于下列语句TeacherNO INT NOT NULL UNIQUE,正确的描述是( ) A.TeacherNO是主码 B.TeacherNO不能为空 C.TeacherNO的值可以是“王大力” D.每一个TeacherNO必须是唯一的 4. 下面哪几个依赖是平凡函数依赖( ) A.(Sno,Cname,Grade) →(Cname,Grade) B.(Sno,Cname) →(Cname,Grade) C.(Sno,Cname) →(Sname,Grade) D.(Sno,Sname) →Sname 5. 下面关于数据库模式设计的说法中正确的有( ) A.在模式设计的时候,有时候为了保证性能,不得不牺牲规范化的要求 B.有的情况下,把常用属性和很少使用的属性分成两个关系,可以提高查询的速度 C.连接运算开销很大,在数据量相似的情况下,参与连接的关系越多开销越大 D.减小关系的大小可以将关系水平划分,也可以垂直划分 三、填空题 得 分 (本大题共20空,每空1分,共20分)错填、不填均无分。 1. SQL语言集数据 、数据 、数据 、数据___________ 功能于一体。 2. E-R图的主要元素是____________、____________、____________。 3. 关系系统的完整性控制包括____________、____________、____________。 4. 关系模式R的码都为单属性,则R一定是第 _ 范式。 5. 数据库系统一般包括数据库、___________、___________、___________与用户。 6. 从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据冗余 度大、______________、修改异常和删除异常。 7. 如果两个实体之间具有m:n联系,则将它们转换为关系模型的结果是_________个表。 8. 数据库设计的一般步骤有:需求分析、___________、____________、 _______________、 ________________、运行与维护等。 68 四、设计题 得 分 (本大题共2小题,第1小题5分,第2小题15,共 20分) 得 分 1. 设教学数据库中有三个基本表: 学生表S(SNO,SNAME,AGE,SEX),其属性分别表示学号、学生姓名、年龄、性别。课程表C(CNO,CNAME,TEACHER),其属性分别表示课程号、课程名、上课教师名。选修表SC(SNO,CNO,GRADE),其属性分别表示学号、课程号、成绩。 有如下SQL查询语句: SELECT CNO FROM C WHERE CNO NOT IN (SELECT CNO FROM S,SC WHERE S.SNO=SC.SNO AND SNAME='张三'); 请完成下列问题: (1)用汉语句子阐述上述SQL语句的含义;(2分) (2)用等价的关系代数表达式表示上述SQL查询语句。(3分) 2. 设有关系R和函数依赖F: R(A,B,C,D,E),F = { ABC→DE,BC→D,D→E }。 试求下列问题: (1)关系R的侯选码是什么?R属于第几范式?并说明理由。(3分) (2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。(12分) 要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。 69 五、综合题(共20分) 现有如下E-R图: 仓库 实体的主要属性如下,其中下划线部分为主码: 仓库(仓库号,仓库名,面积,货位数) 库存量 m n 库存 得 分 零件 零件(零件号,零件名称,规格型号,计量单位,供货商号,价格) 库存(?,?,库存量) 1. 请在?处填上相应的属性。(2分) 2. 试用SQL定义上述E-R图中所有的实体、属性及联系,所对应的英文名称为: Warehouse(wno,wname,square,cou) Material(mno,mname,type,unit,cusnum,price) Storage(?,?,storenumber),要求反映主码和外码,其中的类型长度可以根据需要自行确定。(6分) 3. 用SQL与关系代数表示查询:(6分) 找出零件名为“镙丝”的零件号、所存放的仓库号、库存量。 4. 建立一个包含仓库号、仓库名、零件号、零件名、价格、库存量的视图VIEW1。(6分) 70 试题九参考答案与评分细则 一、单项选择题(共15小题,每小题2分,共30分) 2 3 4 5 6 7 8 9 10 题号 1 答案 A C C C A C C B C C 题号 11 12 13 14 15 答案 D A C B B 二、多项选择题(共5小题,每小题2分,共10分) 1 2 3 4 5 题号 AB CD BD AD ABCD 答案 三、填空题(共20空,每空1分,共20分)。 1. 定义 、 查询 、 操纵 、 控制 2. 实体型 、 属性 、 联系 3. 实体完整性 、 参照完整性 、 用户定义的完整性 4. 二 5. 数据库管理系统 、 应用系统 、 数据库管理员 6. 插入异常 7. 3 8. 概念结构设计 、 逻辑结构设计 、 物理结构设计 、 数据库的实施 四、设计题(共2小题,第1小题5分,第2小题15分,共20分) 1、参考答案: (1)查询张三同学没有选修的课程的课程号。(2分) (2)πCNO(C)- πCNO (SNAME='张三' (S)SC) 或 πCNO(C)- πCNO (SNAME='张三' (SSC)) (3分) 评分标准: (1)意思表达正确即可给分;(2)两个关系的差1分,SNAME='张三'1分, S 2、参考答案: 71 SC1分。 (1)关系R的候选码是(A,B,C),R∈1NF,因为R中存在非主属性D,E对候选码 (A,B,C)的部分函数依赖。 (2)首先消除部分函数依赖 将关系分解为: R1(A,B,C) (A,B,C)为候选码, R1中不存在非平凡的函数依赖 R2(B,C,D,E),(B,C)为候选码, R2的函数依赖集为:F2={(B,C)→D,D→E} 在关系R2中存在非主属性E对候选码(B,C)的传递函数依赖,所以将R2进一步分解: R21(B,C,D) ,(B,C)为候选码, R21的函数依赖集为:F21 = {(B,C)→D } R22(D,E) ,D为候选码, R22的函数依赖集为:F22 = { D→E } 在R1中已不存在非平凡的函数依赖,在R21、R22关系模式中函数依赖的决定因素均为候选码,所以上述三个关系模式均是BCNF。 评分标准: (1)正确指明候选码为(A,B,C)(1分);正确指明R∈1NF(1分);正确说明R∈ 1NF的理由(1分)。 (2)首先正确将R分解为R1(A,B,C)(3分)和R2(B,C,D,E)(3分),再将R2正 确分解为R21(B,C,D)(3分)和R22(D,E)(3分),其中分解属性正确1分,候选码指定正确1分,函数依赖集书写正确1分。分解过程的叙述斟情扣分。 五、综合题(共20分) 1、 仓库号(1分) 零件号(1分) 2、 建立仓库表 Create table warehouse ( wno varchar(10) primary key, wname varchar(20), square number(10,2), cou int) 建立零件表 Create table material ( mno varchar2(10) primary key, mname varchar2(20), type varchar2(10), unit varchar2(10), cusnum varchar2(10), price number(10,2)) 72 建立库存表 Create table storage ( wno varchar2(10) foreign key references warehouse(wno), mno varchar2(10) foreign key references material(mno), storenumber number(10,2), primary key(wno,mno)) 3个primary key各1分,2个foreign key各1分,其它1分,根据实际情况斟情扣分。 评分标准: 3、 用SQL表示: select material.mno,wno,storenumber (1分,mno前无前缀不给分) from material,storage (1分,2个表任少一个不给分) where material.mno=storage.mno and mname=’螺丝’(1分,条件少一个不给分) 用关系代数表示: πmno,wno,storenumber(mname='螺丝' (material)storage) 1分 1分 1分 4、 Create view VIEW1(1分,少关键字或错写不给分) As select warehouse.wno, wname, material.mno, mname, price, storenumber (1分,wno前无前缀不给分,少属性不给分) from warehouse, material, storage (2分,少1个表扣1分,少2个表不给分) where warehouse.wno=storage.wno and material.mno=storage.mno (2分,1个条件1分) 73 数据库原理-期末考试复习题十 一、单项选择题 得 分 (本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要 求的,错选、多选或未选均无分。 1. 数据库系统的特点是( )、数据独立、减少数据冗余、避免数据不一致和加强了数 据保护。 A.数据共享 B.数据存储 C.数据应用 D.数据保密 2. 数据库系统中,物理数据独立性是指( )。 A.数据库与数据库管理系统的相互独立 B.应用程序与DBMS的相互独立 C.应用程序与存储在磁盘上数据库的物理模式是相互独立的 D.应用程序与数据库中数据的逻辑结构相互独立 3. 在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是 ( )。 A.外模式 B.内模式 C.存储模式 D.模式 4. E-R模型用于数据库设计的哪个阶段( )? A.需求分析 B.概念结构设计 C.逻辑结构设计 D.物理结构设计 5. 现有关系表:学生(宿舍编号,宿舍地址,学号,姓名,性别,专业,出生日期)的主 码是( )。 A.宿舍编号 B.学号 C.宿舍地址,姓名 D.宿舍编号,学号 6. 自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要 求R和S含有一个或多个共有的( )。 A.元组 B.行 C.记录 D.属性 7. 下列关系运算中,( )运算不属于专门的关系运算。 A.选择 B.连接 C.广义笛卡尔积 D.投影 8. SQL语言具有( )的功能。 A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵 9. 如果在一个关系中,存在某个属性(或属性组),虽然不是该关系的主码或只是主码的一 部分,但却是另一个关系的主码时,称该属性(或属性组)为这个关系的( ) A. 候选码 B. 主码 74 C. 外码 D. 连接码 10. 下列关于关系数据模型的术语中,( )术语所表达的概念与二维表中的“行”的概 念最接近? A. 属性 B. 关系 C. 域 D. 元组 11. 假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER), 学生选课关系是SC(S#,C#,GRADE)。 要查找某个学生的基本信息及其选课的平均成绩,将使用关系( ) A.S和SC B.SC和C C.S和C D.S、SC和C 12.在SQL语言的SELECT语句中,用于对结果元组进行排序的是( )子句。 A. GROUP BY B.HAVING C.ORDER BY D.WHERE 13.设有关系SC(SNO,CNO,GRADE),主码是(SNO,CNO)。遵照实体完整性规则, 下面( )选项是正确的。 A.只有SNO不能取空值 B.只有CNO不能取空值 C.只有GRADE不能取空值 D.SNO与CNO都不能取空值 14.下面关于函数依赖的叙述中,( )是不正确的。 A.若X→Y,WY→Z,则XW→Z B.若YX,则X→Y C.若XY→Z,则X→Z,Y→Z D.若X→YZ,则X→Y,X→Z 15.设有关系R(A,B,C)和S(C,D)。与SQL语句select A,B,D from R,S where R.C=S.C 等价的关系代数表达式是( ) A.σR.C=S.C(πA,B,D(R×S)) B.πA,B,D(σR,C= S.C(R×S)) C.σR.C=S.C((πA,B (R))×(πD(S))) D.σR,C=S.C(πD((πA,B(R))×S)) 二、多项选择题 得 分 (本大题共5小题,每小题2分,共10分) 在每小题列出的四个备选项中有多个是符合题目要求的,多选、少选、错选、不选均无分。 1. 在SELECT语句中,需要对分组情况应满足的条件进行判断时,应使用( )。 A.WHERE B.GROUP BY C.ORDER BY D.HAVING 2. 对于下列语句,正确的描述是( )。 ATLER TABLE Product Add Year DATETIME DEFAULT ‘1985-01-01’ A. 向Product表中增加一个名为“DATETIME”的属性 B.该属性有一个默认的值是“1985-01-01” 75 C.该属性的数据类型是日期时间型 D.该属性可以被指定为码 3. 现有学生关系Student,属性包括学号(Sno),姓名(Sname),所在系(Sdept),系主 任姓名(Mname),课程名(Cname)和成绩(Grade)。这些属性之间存在如下联系:一个学号只对应一个学生,一个学生只对应一个系,一个系只对应一个系主任;一个学生的一门课只对应一个成绩;学生名可以重复;系名不重复;课程名不重复。则以下不正确的函数依赖是( )。 A.Sno→Sdept B.Sno→Mname C.Sname→Sdept D.(Sname,Cname)→Grade 4. 已知关系R具有属性A,B,C,D,E,F。假设该关系有如下函数依赖AB→C,BC→AD, D→E,CF→B,则下列依赖蕴含于给定的这些函数依赖的有( )。 A.AB→C B.AB→D C.AB→E D.AB→F 5. 下面关于数据库设计的说法中正确的有( ) A.信息需求表示一个组织所需要的数据及其结构 B.处理需求表示一个组织所需要经常进行的数据处理 C.信息需求表达了对数据库内容及结构的要求, 是动态需求 D.处理需求表达了基于数据库的数据处理要求,是静态需求 三、填空题 得 分 (本大题共20空,每空1分,共20分)错填、不填均无分。 1. 数据模型通常由 、 、 三个要素组成。 2. 外模式/模式映象可以保证数据和应用程序之间的____________;模式/内模式映象可以保 证数据和应用程序之间的____________。 3. 数据操作描述的是系统的动态特性,主要分为____________、____________、 ____________、____________四种操作。 4. SQL语言完成核心功能只用了9个动词,其中完成数据控制功能的动词是____________ 和____________。 5. Armstrong公理系统的三条推理规则是____________、____________、____________。 6. 如果关系模式R中所有的属性都是主属性,则R的规范化程度至少达到______________。 7. SQL语言支持数据库三级模式结构。在SQL中,外模式对应于______________、模式对 应于______________、内模式对应于______________。 8. 已知关系R(A,B,C,D)和R上的函数依赖集F={A→CD,C→B},则R的候选码是 ______________,R∈______________NF。 76 四、设计题 得 分 (本大题共2小题,第1小题9分,第2小题15,共 24分) 得 分 1. 设有一个工程供应数据库系统,包括如下四个关系模式: S(SNO,SNAME, STATUS,CITY); P(PNO,PNAME,COLOR,WEIGHT); J(JNO,JNAME,CITY); SPJ(SNO,PNO,JNO,QTY); 供应商表S由供应商号、供应商名、状态、城市组成; 零件表P 由零件号、零件名、颜色、重量组成; 工程项目表J由项目号、项目名、城市组成; 供应情况表SPJ由供应商号、零件号、项目号、供应数量组成; (1)用关系代数查询没有使用天津供应商生产的红色零件的工程号;(3分) (2)用SQL查询供应工程J1零件为红色的工程号JNO(不重复);(3分) (3)用SQL查询没有使用天津供应商生产的零件的工程号;(3分) 2. 设有关系STUDENT(S#,SNAME,SDEPT,MNAME,CNAME,GRADE),(S#,CNAME)为 候选码,设关系中有如下函数依赖: (S#,CNAME)→SNAME,SDEPT,MNAME S#→SNAME,SDEPT,MNAME (S#,CNAME)→GRADE SDEPT→MNAME 试求下列问题: (1)关系STUDENT属于第几范式?(3分) (2)如果关系STUDENT不属于BCNF,请将关系STUDENT逐步分解为巧 BCNF。(7分) 要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖 77 得 分 五、综合题(共16分) 设有商店和顾客两个实体,“商店”有属性商店编号、商店名、地址、电话,“顾客”有属性顾客编号、姓名、地址、年龄、性别。假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和日期,而且规定每个顾客在每个商店里每天最多消费一次。试画出E-R图,注明属性和联系类型,并将E-R模型转换成关系模式,要求关系模式主码加下划线 表示,外码用波浪线﹏﹏﹏﹏。(E-R模型7分,关系模型9分) 78 试题十参考答案与评分细则 一、单项选择题(共15小题,每小题2分,共30分) 2 3 4 5 6 7 8 9 10 题号 1 答案 A C D B B D C B C D 题号 11 12 13 14 15 答案 A C D C B 二、多项选择题(共5小题,每小题2分,共10分) 1 2 3 4 题号 BD BC CD ABC 答案 三、填空题(共20空,每空1分,共20分)。 5 AB 1. 数据结构 、 数据操作 、 完整性约束 2. 逻辑独立性 、 物理独立性 3. 查询 、 插入 、 修改 、 删除 4. GRANT 、 REVOKE 5. 自反律 、 增广律 、 传递律 6. 第三范式 或3NF 7. 视图和部分基本表 、 基本表 、 存储文件 8. A 、 2 四、设计题(共2小题,第1题9分,第2题15分,共24分) 1、 (1)参考答案: πJNO(J)- πJNO (CITY='天津' (S) SPJ COLOR='红' (P)) 评分标准: 两个关系的差1分;三个表的自然连接SSPJP1分,少任意一个关系不给分;CITY='天津'和COLOR='红'两个条件1分,任意一个错误不给分。 (2) 参考答案1: SELECT DISTINCT JNO FROM SPJ,P WHERE SPJ.PNO=P.PNO AND COLOR='红'AND JNO='J1'; 评分标准: 79 SELECT DISTINCT JNO FROM SPJ,P 1分,少DISTINCT扣0.5分,SPJ,P中少任一表不给分;WHERE SPJ.PNO=P.PNO AND COLOR='红'AND JNO='J1'2分,3个条件每错一个扣1分,扣完2分为止。 参考答案2: SELECT DISTINCT SNO FROM SPJ WHERE JNO='J1' AND PNO IN (SELECT PNO FROM P WHERE COLOR='红'); 评分标准: SELECT DISTINCT JNO FROM SPJ 1分,少DISTINCT扣0.5分;WHERE JNO='J1' AND PNO IN (SELECT PNO FROM P WHERE COLOR='红')2分,无JNO='J1'、PNO IN、SELECT PNO FROM P WHERE COLOR='红'均扣1分,扣完2分为止。 (3) 参考答案1: SELECT 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 JNO NOT IN 和 SELECT JNO FROM SPJ WHERE SNO IN 和 SELECT SNO FROM S WHERE CITY='天津' 三层嵌套各1分,各嵌套内有错误则该项均不给分。 参考答案2: 80 SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ,S WHERE SPJ.SNO=S.SNO AND SPJ.JNO=J.JNO AND CITY='天津'); 评分标准: SELECT JNO FROM J WHERE NOT EXISTS 1分; SELECT * FROM SPJ,S 1分,SPJ,S少一个表不给分; WHERE SPJ.SNO=S.SNO AND SPJ.JNO=J.JNO AND CITY='天津'1分,三个条件少一个不给分。 参考答案3: SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND EXISTS (SELECT * FROM S WHERE S.SNO=SPJ.SNO AND CITY='天津')); 评分标准: SELECT JNO FROM J WHERE NOT EXISTS 和 SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND EXISTS 和 (SELECT * FROM S WHERE S.SNO=SPJ.SNO AND CITY='天津')) 三层嵌套各1分,各嵌套内有错误则该项均不给分。 2、参考答案: 81 (1)关系STUDENT是1NF,因为F中存在非主属性 SNAME,SDEPT,MNAME对侯选码(S#,CNAME)的部分函数依赖。 (2)首先消除部分函数依赖(S#,CNAME)→SNAME,SDEPT,MNAME 将关系分解为: R1(S#,SNAME,SDEPT,MNAME),S#为候选码 F1 = { S#→SNAME,SDEPT,MNAME} R2(S#,CNAME,GRADE),(S#,CNAME)为候选码 F2={(S#,CNAME)→GRADE} 在关系R1中存在非主属性对候选码的传递函数依赖S#→SDEPT,所以将R1进一步分解: R11(S#,SNAME,SDEPT) ,S#为候选码 F11 = { S#→SNAME,SDEPT} R12(SDEPT,MNAME) ,SDEPT为候选码 F12 = { SDEPT→MNAME} 在R2,R11,R12关系模式中函数依赖都是非平凡的,并且决定因素均是候选码,所以上述三个关系模式均是BCNF。 评分标准: (1)回答R是1NF并正确说明理由3分,没有正确回答出理由扣1分。 (2)首先正确将R分解为R1(S#,SNAME,SDEPT,MNAME)(3分)和 R2(S#,CNAME,GRADE)(3分),再将R1正确分解为R11(S#,SNAME,SDEPT)(3分)和R12 SDEPT,MNAME))(3分),其中分解属性正确1分,候选码指定正确1分,函数依赖集书写正确1分。分解过程的叙述斟情扣分。 五、综合题(共16分) E-R模型:(共7分) 地址 顾客编号 姓名 年龄 性别 (两个实体型各2分,属性错扣1 分,购物联系的两个属性各1分,联系类型1分) 顾客 关系模型:(共9分) 顾客(顾客编号,姓名,地址, m 年龄,性别)(2分,主码1分,其 它1分) 消费金额 商店(商店编号,商店名,地购物 址,电话)(2分,主码1分,其它1 n 分) 日期 购物(顾客编号,商店名称,商店 日期,消费金额) (5分,主码2分,两上 外码各1分,其它1分) 地址 电话 商店编号 商店名 82 因篇幅问题不能全部显示,请点此查看更多更全内容