自然联接运算 简述
(1)简述关系数据语言的特点和分类。
(2)简述等值连接与自然连接的区别和联系。
(三)应用题
1. 设有如下所示的关系模式S、C、SC: S(S#,SNAME,AGE,SEX) C(C#,CNAME,TEACHER) SC(S#,C#,GRADE)
试用关系代数表达式表示下列查询语句:
(1)检索“陆定”老师所授课程的课程号(C#)和课程名(CNAME)。 (2)检索年龄大于20的男学生学号(S#)和姓名(SNAME)。
(3)检索至少选修“陆定”老师所授全部课程的学生姓名(SNAME)。 (4)检索”李翔”同学不学课程的课程号(C#)。 (5)检索至少选修两门课程的学生学号(S#)。
(6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。 (7)检索选修课程包含“陆定”老师所授课程之一的学生学号(S#)。 (8)检索选修课程号为k1和k5的学生学号(S#)。 (9)检索选修全部课程的学生姓名(SNAME)。
(10)检索选修课程包含学号为2的学生所修课程的学生学号(S#)。 (11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。
2.关系R和S如下图所示,试计算R÷S。
R A a a a b b c c B b b b d d k k C c e h e d c e D d f k f l d f 9
S
C c D d 3.设有如图所示的关系R和S,计算: e f (1)R1=R-S
R S (2)R2=R∪S
(3)R3=R∩S A B C A B C (4)R4=R×S
a b c b a f
b a f d a d
c b d
4.设有如图所示的关系R,S和T,计算: (1)R1=R∪S
R S T (2)R2=R-S
(3)R3=R ?? T A B A B B C (4)R4=R ?? T
a d d a b b
A<C
b e b a c c (5)R5=∏A(R)
c c b c b d (6)R6=σA=C(R×T)
5.设有如图所示的关系R,S,计算: (1)R1=R ?? S
A B C C D E (2)R2=R ?? S
3 6 7 3 4 5 [2]<[2]
7 2 3 4 5 7 (3)R3=σB=d(R×S)
7 2 3
4 4 3
6.设有如图所示的两上关系E1和E2,其中E2是从E1中经过关系运算所形成的结果,试给出该运算表达式。
E1 E2
A B C B C 1 2 3 5 6
4 5 6 8 9
7 8 9
7.设有如下所示的三个关系S、C和SC。用关系代数表达式表示下列要求,并求出结果。
S 学号 姓名 年龄 性别 籍贯 20001 王小严 20 女 北京 20002 20003 20004 20005
课程号 C001
李 白 21 陈志坚 23 王 兵 20 张 红 22 男 男 男 女 上海 长沙 上海 武汉 课程名 高等数学 C 教师 李 娟 10
办公室 416 C002 C003 C004
数据结构 操作系统 编译原理 刘小东 吴 浩 王 伟 415 415 415 学号 20001 20001 20001 20001 20002 20003 20003 20003 20004 20004 20005 20005 SC 课程号 C001 C002 C003 C004 C001 C001 C002 C004 C001 C004 C001 C003 成绩 90 90 85 87 90 75 70 56 90 85 95 80
(1).检索籍贯为上海的学生姓名、学号和选修的课程号。 (2).检索选修操作系统的学生姓名、课程号和成绩。 (3).检索选修了全部课程的学生姓名、年龄。
8.以下述数据库各关系模式为例, 仓库(仓库号,城市,面积) 职工(仓库号,职工号,工资)
订购单(职工号,供应商号,订购单号,订购日期) 供应商(供应商号,供应商名称,地址) 用关系代数完成以下检索。 解:
(1).检索在仓库2工作的职工的工资。 (2).检索在上海工作的职工的工资。 (3).检索北京的供应商名称。
(4).检索目前与职工E6有业务联系的供应商名称。 (5).检索所有职工的工资大于1220的仓库所在的城市。 (6).检索和北京的所有供应商都有业务联系的职工的工资。
9.用关系代数完成下面各项操作(各个关系模式及关系如后所示)。
供应商(SNO,SNAME,CITY)--供应商号,供应商名,城市
零件(PNO,PNAME,COLOR,WEIGHT)--零件号,名称,颜色,重量 工程(JNO,JNAME,CITY)--工程号,工程名,城市
供应(SNO,PNO,JNO,QTY)--供应商号,零件号,工程号,数量 (1).求供应工程J1零件的单位号码SNO (2).求供应工程J1零件P1的单位号码SNO (3).求供应工程J1零件为红色的单位号码SNO
(4).求没有使用天津供应商的红色零件的工程号JNO
(5).求至少用了单位S1所供应的全部零件的工程号JNO.
第三部分 关系数据库语言SQL
11
(一)、考核内容
(1)SQL功能特点、SQL基本操作 (2)SQL数据查询
(3)SQL视图操作、子查询 (二)、考核要求
(1)了解SQL语言的概貌、发展、标准化、主要特点。 (2)掌握SQL表基本操作方法:定义、修改与撤消基本表。
(3)掌握SQL数据更新方法:INSERT、DELETE、UPDATE语句的格式和用法。 (4)掌握SQL数据查询方法:SELECT语句的格式及各种用法。 (5)了解SQL的库函数。
(6) 了解视图的概念、作用;掌握视图的定义与撤消。
(一)选择
1.SQL语言是( )的语言,易学习。
A.过程化 B.非过程化 C.格式化 D.导航式 2.SQL语言是( )语言。
A.层次数据库 B.网络数据库 C.关系数据库 D.非数据库 3.SQL语言具有( )的功能。
A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵 4.SQL语言具有两种使用方式,分别称为交互式SQL和( )。
A.提示式SQL B.多用户SQL C.嵌入式SQL D.解释式SQL
5.假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系( )。
A.S B.SC,C C.S,SC D.S,C,SC 6.若用如下的SQL语句创建一个student表: CREATE TABLE student(NO Char(4) NOT NULL, NAME Char(8) NOT NULL, SEX Char(2), AGE tinyint)
可以插入到student表中的是 。
A.(‘1031’,‘曾华’,男,23) B.(‘1031’,‘曾华’,NULL,NULL)
C.(NULL,‘曾华’,‘男’,‘23’) D.(‘1031’,NULL,‘男’,23) 7. SL语言的数据操纵语句包括SELECT,INSQERT,UPDATE和DELETE等。其中最重要的,也是使用最频繁的语句是()。 A.SELECT B.INSERT C.UPDATE D.DELETE
第8到第10题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下: S(S#,SN,SEX,AGE,DEPT) C(C#,CN)
12