数据库原理期末考试复习题及答案 下载本文

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),其属性分别表示车间编号、车间名

和车间主任的职工号。

职工基本表: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 }

在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)每个关系模式的主码、外码如下: 工厂:主码是工厂编号,无外码; 产品:主码是产品编号,无外码; 职工:主码职工号,外码是工厂编号; 生产:主码是(工厂编号,产品编号), 外码是工厂编号、产品编号。

规格 数据库原理-期末考试复习题二

一、单项选择题

(本大题共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.重新选取其他属性