10. SQL语言中,删除一个表的命令是(A )
A. DELETE B. DROP C. CLEAR D. REMOVE
11. 图1中( )是关系完备的系统
系模式的关键字是( C )。 A.M端实体的关键字 B.N端实体的关键字 C.M端实体关键字与N端实体关键字组合 D.重新选取其他属性
A B C D 图1 12.有关系模式A(S,C,M),其中各属性的含义是:S:学生;C :课程;M:名次,其语义是:每一个学生选修每门课程的成绩有一定的名次,每门课程中每一名次只有一个学生(即没有并列名次),则关系模式A最高达到( D ) A.1NF B.2NF C.3NF D.BCNF 13.关系规范化中的删除异常是指 ( D )
A.不该删除的数据被删除 B.不该插入的数据被插入 C.应该删除的数据未被删除 D.应该插入的数据未被插入
14.在数据库设计中, E-R图产生于( D )
A. 需求分析阶段 B.物理设计阶段 C.逻辑设计阶段 D.概念设计阶段
15.有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的
字符串,这一规则属于( C )。 A.实体完整性约束 B.参照完整性约束
C.用户自定义完整性约束 D.关键字完整性约束
16.事务是数据库运行的基本单位。如果一个事务执行成功,则全部更新提交;
如果一个事务执行失败,则已做过的更新被恢复原状,好像整个事务从未有过这些更新,这样保持了数据库处于( B )状态。 A.安全性 B.一致性
11
C.完整性 D.可靠性
17. ( B )用来记录对数据库中数据进行的每一次更新操作。
A.后援副本 C.数据库
B.日志文件 D.缓冲区
18. 在并发控制技术中,最常用的是封锁机制,基本的封锁类型有排它锁X
和共享锁S,下列关于两种锁的相容性描述不正确的是(B ) A. X/X :TRUE B. S/S:TRUE C. S/X:FALSE D. X/S:FALSE 19. 设有两个事务T1、T2,其并发操作如图1所示,下面评价正确的是( C ) 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.没有
12
得 分 二、填空题
(本大题共7小题,每空1分,共10分) 请在每小题的空格中填上正确答案。 错填、不填均无分。
1. 关系数据库的实体完整性规则规定基本关系的 主码 都不能取
空 。
2. 在关系A(S,SN,D)和B(D,CN,NM)中,A的主码是S,B的主码
是D,则D在A中称为 外键 。
3. SQL语言中,用于授权的语句是___grant______。
4. 关系R与S的交可以用关系代数的5种基本运算表示为 s-(s-r) 。
5. 数据库系统中最重要的软件是 数据库管理系统 ,最重要的用
户是 DBA
6. 数据库设计分为以下六个设计阶段:需求分析阶段、 概念模型设
计 、逻辑结构设计阶段、 物理结构设计 、数据库实施阶段、数据库运行和维护阶段。
7. 已知关系R(A,B,C,D)和R上的函数依赖集F={A→CD,C→B},则
R∈ 2 NF。 三、简答题
得 分 (本大题共3小题,第1题4分,第2、3题各3分, 共10分)
1. 试述数据、数据库、数据库管理系统、数据库系统的概念。
2. 说明视图与基本表的区别和联系。
3.数据库系统的故障有哪些类型?
四、设计题
得 分 (第1题15分,第2题10分,共25分)
1. 设有一个工程供应数据库系统,包括如下四个关系模式:
? S(SNO,SNAME, STATUS,CITY); ? P(PNO,PNAME,COLOR,WEIGHT);
13
? 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分)
(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分)
要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
(1) 关系STUDENT是1NF,因为F中存在非主属性SNAME,SDEPT,
14
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的函数依赖集为:
F11 = { S#→SNAME,SDEPT}
R12(SDEPT,MNAME) ,SDEPT为候选码, R12的函数依赖集为: F12 = { SDEPT→MNAME} 在R2、R11、R12关系模式中函数依赖都是非平凡的,并且决定因素均是候选码,所以上述三个关系模式均是BCNF。
五、综合题(15分)
某企业集团有若干工厂,每个工厂生产多种产品,
且每一种产品可以在多个工厂生产,每个工厂按照固定的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘用职工有聘期和工资。工厂的属性有工厂编号、厂名、地址,产品的属性有产品编号、产品名、规格,职工的属性有职工号、姓名。
(1)根据上述语义画出E-R图;(5分) (2)将该E-R模型转换为关系模型;(5分)
(要求:1:1和1:n的联系进行合并)
(3)指出转换结果中每个关系模式的主码和外码。(5分)
得 分 15