数据库课后习题答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

P103

第十题

(3)SELECT 职工号,姓名

FROM 职工WHERE 职工号IN (SELECT 职工号

FROM 参加WHERE 编号IN (SELECT 编号FROM 社会团体WHERE 名称='唱歌队' OR 名称=‘篮球队’))

(4)SELECT *

FROM 职工

WHERE 职工号NOT IN (SELECT 职工号FROM 参加)

(5)SELECT *

FROM 职工

WHERE NOT EXISTS (SELECT *

FROM 社团WHERE NOT EXISTS(SELECT *

FROM 参加WHERE 职工.职工号=职工号AND 社团.编号=编号))

(6)SELECT *

FROM 职工

WHERE NOT EXISTS (SELECT *

FROM 参加 A

Where A.职工号=‘1001’and not exists

(select *

From 参加B

Where 职工.职工号=B.职工号and A.编号=B.编号))

(7)select 编号,count(职工号)as 人数

From 参加

Group by 编号

(8)select 名称from 社团, 参加

Group by 编号having count(*)>=all(select count(职工号)

From 参加Group by 编号)

select Cno,Cname

from Course

where Cno in (select Cno

from elective

Group by o having count(*)>=all(select count(Sno)

From elective Group by Cno ))

(9)select 名称,负责人

From 社团

Where 编号in (select 编号

From 参加

Group by 编号having count(职工号)>100)(10)

Grant select,insert, delete on table 社团,参加to 李平with grant option 11\

(1)select 姓名,联系电话

From 供应商

Where 所在城市=‘天津’

(2)

Select *

From 工程

Where 预算>=50000 and 预算<=1000000

Order by 预算DESC

(3)

select 工程代码

From 供应零件

Where 供应商代码=‘S1’(4)select 零件名,数量

From 零件,供应零件

Where 零件代码in (select 零件代码

From 供应零件

Where 工程代码=‘J2’)(5)select 零件代码

From 供应商

Where 供应商代码in (select 供应商代码

From 供应商

Where 所在城市=‘上海’)(6)select 工程名

From 工程

Where 工程代号in (select 工程代码

From 供应零件

Where 零件代号in (select 零件代号

From 零件

Where 产地=‘上海’))(7)select 工程代号

From 供应零件

Where 零件代号not in (select 零件代号

From 零件

Where 产地=‘天津’)

Select 工程代号

From 供应零件

Where not exists (select *

From 零件

Where 供应零件.零件代码=零件代码and 产地=‘天津’)(8)update 零件

Set 颜色=‘蓝色’

Where 零件代码in (select 零件代码

From 零件

Where 颜色=‘红色’)

12.(6)select学号,姓名

From 学生

Where 学号in (select 学号

From 选课

Group by 学号having count(课程号)>=3) select Sno, Sname

From Student

Where Sno in (select Sno

From elective

Group by Sno having count(Cno)>=3)

(7) select学号,姓名

From 学生

Where 学号in (select 学号,sum(

From 选课,课程

Where 选课.课程号= 课程.课程号

Group by 学号having sum(学分)>30) (8)Update 选课

Set 成绩=成绩*1.2

Where 课程号in (select 课程号

From 课程

Where 课程名=‘数据库’)and 成绩<60 (9)delete from选课where 学号in (select 学号

From 选课

Where 成绩<60 and 课程号in (select 课程号

From 课程

Where 课程名=‘数据库’))

1、已知学生关系模式

S(Sno,Sname,SD,Sdname,Course,Grade)

其中:Sno学号、Sname姓名、SD系名、Sdname系主任名、Course课程、Grade成绩。

(1)写出关系模式S的基本函数依赖和主码。

(2)原关系模式S为几范式?为什么?分解成高一级范式,并说明为什么?

(3)将关系模式分解成3NF,并说明为什么?

(1)写出关系模式S的基本函数依赖和主码。

答: 关系模式S的基本函数依赖如下:

Sno→Sname,SD→Sdname,Sno→SD,(Sno,Course) →Grade

关系模式S的码为:(Sno,Course)。

(2)原关系模式S为几范式?为什么?分解成高一级范式,并说明为什么?

答: 原关系模式S是属于1NF的,码为(Sno,Course),非主属性中的成绩完全依赖于码,而其它非主属性对码的函数依赖为部分函数依赖,所以不属于2NF。

消除非主属性对码的函数依赖为部分函数依赖,将关系模式分解成2NF如下:

S1(Sno,Sname,SD,Sdname)、S2(Sno,Course,Grade)

(3)将关系模式分解成3NF,并说明为什么?

答: 将上述关系模式分解成3NF如下:

关系模式S1中存在Sno→SD,SD→Sdname,即非主属性Sdname传递依赖于Sno,所以S1不是3NF。进一步分解如下:

相关文档
最新文档