- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 PAGE \* Arabic 7 页
1 、设某商业集团数据库中有3个实体集。一是“公司”实体集,属性有公司编号、公司名、地址等;二是“仓库”实体集,属性有仓库编号、仓库名、地址等;三是“职工”实体集,属性有职工编号、姓名、性别等。
公司与仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖;仓库与职工间存在“聘用”联系,每个仓库可聘用多个职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。
试画出ER图,并在图上注明属性、联系的类型。(7分)
将ER图转换成关系模式集,并指出每个关系模式集,并指出每个关系模式主键。(8分)
解:(1)
地址公司编号
地址
公司编号
公司
隶属
仓库
1
N
仓库编号
仓库名
地址
聘用
聘期
工资
1
N
职工
职工编号
姓名
性别
公司名
这个ER图可以转换3个关系模式:
公司(公司编号,公司名,地址)
仓库(仓库编号,仓库名,地址,公司编号)
职工(职工编号,姓名,性别,仓库编号,聘用,工资)
2、(9分)已知以下三个关系模式:
学生关系模式S ( S# , SN , AGE , SEX )
学习关系模式SC ( S# , C# , GRADE )
课程关系模式C ( C# , CN , TEACHER )。
其中:S#学号, SN学生姓名, AGE年龄, SEX性别 ,C#课程号, GRADE成绩,CN课程名,TEACHER教师名。
试用关系代数表达式表达以下每个查询语句:
1) 检索选修课程号为C2学生学号与成绩。(3分)
2) 检索选修课程名为‘MATHS’的学生学号与姓名。(3分)
3) 检索选修了全部课程的学生姓名。(3分)
试用SQL语言表示以下每个查询语句:
4) 检索选修课程号为C4的学生学号与姓名。(3分)
5) 检索不选修C2课程的学生姓名与年龄。(3分)
6) 检索所学课程包含S3所学全部课程的学生学号。(3分)
答案:
ΠS#,GRADE(δ SC.C#=’C2’( SC))
ΠS.S#,S.SN(δ C.CN=‘MATHS’(S ∞ SC∞C))
(3) ΠSN((ΠS#,C#(SC) ΠC#(SC)) ∞S)
(4) Select Sno, Sname
From S ,SC
Where S.Sno=SC.Sno and SC. C#=C4’
(5)SELECT SN,AGE
FROM S
WHERE SNO NOT IN (SELECT SNO
FROM SC,
WHERE SC.SNO=S.SNO AND SC.C#=’C2’) ;
(6)SELECT DISTINCT S#
FROM SC SCX
WHERE NOT EXISTS
(SELECT *
FROM SC SCY
WHERE SCY.S#= S3 AND
NOT EXISTS
(SELECT *
FROM SC SCZ
WHERE SCZ.S#=SCX.S# AND
SCZ.C#=SCY.C#));
3、(10分)根据给出的关系代数表达式的语法树,利用关系代数表达式的优化算法对该语法树进行优化,画出优化后的标准语法树
在供应关系数据库S_P_J中有供应商表S,零件表P,工程项目表J,及供应情况表SPJ四个表。以下是“没有使用天津供应商生产的红色零件的工程号JNO” 对应的关系代数表达式为:
πJno(J) -πJno(σS.Sno=SPJ.Sno?P.Pno=SPJ.Pno?City=‘天津’?Color=‘红’(S×SPJ×P))
用SQL语言表示上述关系代数。(5分)
先将关系代数转化成语法树, 并对其进行优化处理,画出优化后的标准语法树。(10分)
解:SQL语句为: 语法树为:
结 果—?
结 果
—
?Jno
?Jno
?Color=’红’
?City=’天津’
?P.P
文档评论(0)