《数据库系统概论》作业2
- 格式:doc
- 大小:50.00 KB
- 文档页数:5
数据库系统概论平时作业2一、单项选择题(本大题共20小题,每小题 2分,共40分) 得分在每小题列出的四个备选项中只有一个是符合题目要求的,错选、多选或未选均无分。
1.下面列出的数据管理技术发展的三个阶段中,哪个(些)阶段没有专门的软件对数据进行管理?( A )Ⅰ.人工管理阶段Ⅱ.文件系统阶段Ⅲ.数据库阶段A.只有ⅠB.只有ⅡC.Ⅰ和ⅡD.Ⅱ和Ⅲ2. 在关系数据库中,表( table)是三级模式结构中的( B )A.外模式B.模式C.存储模式D.内模式第(3)至(5)题是基于如下两个关系,其中雇员信息表关系EMP的主键是雇员号,部门信息表关系DEPT的主键是部门号EMP DEPT雇员号雇员名部门号工资部门号部门名地址001 张山02 2000 01 业务部1号楼010 王宏达01 1200 02 销售部2号楼056 马林生02 1000 03 服务部3号楼101 赵敏04 1500 04 财务部4号楼3. 若执行下面列出的操作,哪个操作不能成功执行?( D )A.从EMP中删除行(’010’,’王宏达’,’01’,1200)B.在EMP中插入行(’102’,’赵敏’,’01’,1500)C.将EMP中雇员号=’056’的工资改为1600元D.将EMP中雇员号=’101’的部门号改为’05’4.若执行下面列出的操作,哪个操作不能成功执行?( C )A.从DEPT中删除部门号=’03’的行B.在DEPT中插入行(’06’,’计划部’,’6号楼’)C.将DEPT中部门号=’02’的部门号改为’10’D.将DEPT中部门号=’01’的地址改为’5号楼’5.在雇员信息表关系EMP中,哪个属性是外键(foreignkey)?(C)第1页,共7页A.雇员号B.雇员名C.部门号D.工资6.在SQL语言的SELECT语句中,实现投影操作的是哪个子句?( A )。
A.select B.fromC.where D.groupby7.SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句INSERT、DELETE、UPDATE实现哪类功能?( B )。
第1章绪论欧阳光明(2021.03.07)1 .试述数据、数据库、数据库系统、数据库管理系统的概念。
答:( l )数据(Data ) :描述事物的符号记录称为数据。
数据的种类有数字、文字、图形、图像、声音、正文等。
数据与其语义是不可分的。
解析在现代计算机系统中数据的概念是广义的。
早期的计算机系统主要用于科学计算,处理的数据是整数、实数、浮点数等传统数学中的数据。
现代计算机能存储和处理的对象十分广泛,表示这些对象的数据也越来越复杂。
数据与其语义是不可分的。
500 这个数字可以表示一件物品的价格是500 元,也可以表示一个学术会议参加的人数有500 人,还可以表示一袋奶粉重500 克。
( 2 )数据库(DataBase ,简称DB ) :数据库是长期储存在计算机内的、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
( 3 )数据库系统(DataBas 。
Sytem ,简称DBS ) :数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
解析数据库系统和数据库是两个概念。
数据库系统是一个人一机系统,数据库是数据库系统的一个组成部分。
但是在日常工作中人们常常把数据库系统简称为数据库。
希望读者能够从人们讲话或文章的上下文中区分“数据库系统”和“数据库”,不要引起混淆。
( 4 )数据库管理系统(DataBase Management sytem ,简称DBMs ) :数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
DBMS 的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
解析DBMS 是一个大型的复杂的软件系统,是计算机中的基础软件。
目前,专门研制DBMS 的厂商及其研制的DBMS 产品很多。
《数据库系统概论》作业 11.简述数据、数据模型、数据库、关系数据库、数据库管理系统、数据库系统的概念。
答:数据:存储在计算机内用来描述事物特征的各种符号及其组合,称为数据。
它不但包括数字,还包括文字、图形、图像、声音等。
数据模型:数据模型是一种对客观事物抽象化的表现形式。
数据模型首先要真实地反映现实世界,;其次要易于理解,和人们对外部事物的认识相一致;最后要便于实现,因为最终是要由计算机来处理。
数据模型通常由数据结构、数据操作和完整性约束三要素组成。
数据库:简称DB,是由DBMS管理的数据的聚集。
是储存在计算机内具有一定结构的数据集合。
关系数据库:是以关系模型为基础的数据库。
或者说数据库里的数据可以用一个二维表的的形式表示的数据库。
数据库管理系统:简称DBMS,是专门用于建立和管理数据库的一套软件,介于应用程序和操作系统之间。
它不仅具有最基本的数据管理功能,还能保证数据的完整性、安全性、提供多用户的并发控制,当数据库出现故障时对系统进行恢复。
DBMS主要由查询处理程序、事务处理程序和存储管理程序等组成。
数据库系统:简称DBS,使指引进数据库技术后的计算机系统,它包括和数据库有关的整个系统:计算机软硬件系统、数据库、DBMS、应用程序以及数据库管理员和用户等等。
主要特点:数据结构化;数据共享性好,冗余度小,数据独立性好;数据由DBMS统一管理和控制,从而保证多个用户能并发、安全可靠地访问,而一旦出现故障,能有效恢复。
3.假设学生关系Student包括五个属性:学号StudentNo、姓名StudentName、年龄StudentAge、性别StudentSex和所在系Department。
(1)指出该关系的键码和属性的类型;(2)给出三个适当的元组。
答:(1)该关系的键码是:学号;属性的类型:学号:字符型;姓名:字符型;年龄:整型;性别:布尔型;所在系:字符型。
(2)学号姓名年龄性别所在系991510000 张三 25 .T. 计算机991510078 李四 24 .T. 化学981501008 王燕 25 .F. 中文5.请为计算机经销商设计一个数据库,要求包括生产厂商和产品的信息。
课后作业习题《数据库系统概论》课程部分习题及参考答案第一章绪论(教材 41页)1.试述数据、数据库、数据库系统、数据库管理系统的概念。
数据:描述事物的符号记录称为数据。
数据的种类有文字、图形、图象、声音、正文等等。
数据与其语义是不可分的。
数据库:数据库是长期储存在计算机内、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
数据库系统:数据库系统( DBS)是指在计算机系统中引入数据库后的系统构成。
数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
数据库管理系统:数据库管理系统(DBMS)是位于用户与操作系统之间的一层数据管理软件。
用于科学地组织和存储数据、高效地获取和维护数据。
DBMS主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
2.使用数据库系统有什么好处?使用数据库系统的好处是由数据库管理系统的特点或优点决定的。
使用数据库系统的好处很多,例如可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担等。
为什么有这些好处,可以结合第 5题来回答。
使用数据库系统可以大大提高应用开发的效率。
因为在数据库系统中应用程序不必考虑数据的定义、存储和数据存取的具体路径,这些工作都由DBMS来完成。
此外,当应用逻辑改变,数据的逻辑结构需要改变时,由于数据库系统提供了数据与程序之间的独立性。
数据逻辑结构的改变是 DBA的责任,开发人员不必修改应用程序,或者只需要修改很少的应用程序。
从而既简化了应用程序的编制,又大大减少了应用程序的维护和修改。
使用数据库系统可以减轻数据库系统管理人员维护系统的负担。
因为DBMS在数据库建立、运用和维护时对数据库进行统一的管理和控制,包括数据的完整性、安全性,多用户并发控制,故障恢复等等都由DBMS执行。
实验2答案1.管理数据库1)要求在本地磁盘D创建一个学生-课程数据库(名称为student),只有一个数据文件和日志文件,文件名称分别为stu和stu_log,物理名称为stu_data.mdf 和stu_log.ldf,初始大小都为3MB,增长方式分别为10%和1MB,数据文件最大为500MB,日志文件大小不受限制。
CREATE DATABASE studentON(NAME=stu,FILENAME='D:\stu_data.mdf',SIZE= 3MB,MAXSIZE= 500MB,FILEGROWTH= 10%)LOG ON(NAME=stu_log,FILENAME='D:\stu_log.ldf',SIZE= 3MB,MAXSIZE=unlimited,FILEGROWTH= 1MB)2)创建一个Company数据库,该数据库的主数据文件逻辑名称为Company_data,物理文件为Company.mdf,初始大小为10MB,最大尺寸为无限大,增长速度为10%;数据库的日志文件逻辑名称为Company_log,物理文件名为Company.ldf,初始大小为1MB,最大尺寸为50MB,增长速度为1MB。
CREATE DATABASE companyON(NAME=company_data,FILENAME='D:\company.mdf',SIZE= 10MB,MAXSIZE=unlimited,FILEGROWTH= 10%)LOG ON(NAME=company_log,FILENAME='D:\company.ldf',SIZE= 1MB,MAXSIZE= 50MB,FILEGROWTH= 1MB)3)创建数据库DB,具有2个数据文件,文件逻辑名分别为DB_data1和DB_data2,文件初始大小均为5MB,最大为100MB,按10%增长;只有一个日志文件,初始大小为3MB,按10%增长;所有文件都存储在D盘文件夹ceshi中。
数据库系统概论习题与答案一、单选题(共97题,每题1分,共97分)1.设有关系模式R(A,B,C,D),F={(A,D->C.C->B)},则R的所有候选码为()。
A、(A,D)B、(A,D,C)C、(A,C)D、(A,D),(A,C)正确答案:A2.关于约束叙述正确的是()。
A、每个约束可以作用到多个表的多个列B、每个约束只能作用于一个列上C、每个约束可以作用多个列,但是必须在一个表里D、以上都不对正确答案:A3.设关系R(A,B,C)和S(A,D),与自然连接R⋈S等价的关系代数表达式是( )A、∏R,A,B.C,D(R×S)B、σ(R.A=S.A)(R×S)C、R(等值连接1=1)SD、∏B,C,S.A,D(σR.A=S.A(R×S))正确答案:A4.下面的()SQL 语句表示删除学生表(STU)的结构。
A、DROP TABLE STU;B、DELETE TABLE STU;C、REMOVE TABLE STU;D、DELETE FROM STU;正确答案:A5.疫苗接种记录表中,有各次接种是否有不良反应的列,规定前次接种出现异常的人后续不能接种,这属于()。
A、动态列级约束B、静态关系约束C、静态列级约束D、静态元组约束正确答案:D6.能够保证数据库系统中的数据具有较高的逻辑独立性的是()A、外模式/模式映像B、外模式C、模式D、模式/内模式映像正确答案:A7.若不控制并发问操作,将带来()问题。
A、安全性B、死锁C、死机D、不一致正确答案:D8.同一个关系模型的任意两个元组值()A、不能全同B、可全同C、必须全同D、以上都不是正确答案:A9.关系数据库中的选择操作是指从关系中( )A、抽出满足指定条件的记录B、把不满足条件的记录抽取出来形成新的关系。
C、抽出特定列D、在特定记录中抽出想要的列正确答案:A10.关系模型中,候选码()。
A、可由一个或多个其值能唯一标识该关系模式中任何元组的属性组成B、可由多个任意属性组成C、至多由一个属性组成D、以上都不是正确答案:A11.授权数据对象的(),则授权子系统的越灵活。
第二章关系数据库1 .试述关系模型的三个组成部分。
答:关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。
2 .试述关系数据语言的特点和分类。
答:关系数据语言可以分为三类:关系代数语言。
关系演算语言:元组关系演算语言和域关系演算语言。
SQL:具有关系代数和关系演算双重特点的语言。
这些关系数据语言的共同特点是,语言具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用。
3 (略)4 .5 . 述关系模型的完整性规则。
在参照完整性中,为什么外部码属性的值也可以为空?什么情况下才可以为空?答:实体完整性规则是指若属性 A 是基本关系R 的主属性,则属性 A 不能取空值。
若属性(或属性组)F 是基本关系R 的外码,它与基本关系S 的主码Ks 相对应( 基本关系R 和S 不一定是不同的关系),则对于R 中每个元组在 F 上的值必须为:或者取空值(F 的每个属性值均为空值);或者等于S 中某个元组的主码值。
即属性 F 本身不是主属性,则可以取空值,否则不能取空值。
6.设有一个SPJ 数据库,包括S,P,J,SPJ 四个关系模式:1)求供应工程J1 零件的供应商号码SNO:πSno(σJno=‘J1’(SPJ))2)求供应工程J1 零件P1 的供应商号码SNO:πSno(σJno=‘J1’∧Pno=‘P1‘(SPJ))3)求供应工程J1 零件为红色的供应商号码SNO :πSno(πSno,,Pno(σJno=‘J1‘ (SPJ))∞πPno(σCOLOR= ’红‘(P)))4)求没有使用天津供应商生产的红色零件的工程号JNO :πJno(SPJ)- πJNO(σcity=‘天津’∧Color= ‘红‘(S∞ SPJ∞ P)5)求至少用了供应商S1 所供应的全部零件的工程号JNO:πJno,Pno(SPJ)÷πPno(σSno=‘S1‘(SPJ)7.试述等值连接与自然连接的区别和联系。
试题二一、单项选择题在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
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.重新选取其他属性10.SQL语言中,删除一个表的命令是()A. DELETEB. DROPC. CLEARD. REMOVE11.图1中()是关系完备的系统A B C D图112.有关系模式A(S,C,M),其中各属性的含义是:S:学生;C:课程;M:名次,其语义是:每一个学生选修每门课程的成绩有一定的名次,每门课程中每一名次只有一个学生(即没有并列名次),则关系模式A最高达到()A.1NF B.2NFC.3NF D.BCNF13.关系规范化中的删除异常是指 ( )A.不该删除的数据被删除B.不该插入的数据被插入C.应该删除的数据未被删除D.应该插入的数据未被插入14.在数据库设计中,E-R图产生于()A.需求分析阶段B.物理设计阶段C.逻辑设计阶段D.概念设计阶段15.有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于()。
课后作业习题《数据库系统概论》课程部分习题及参考答案第一章绪论(教材41页)1.试述数据、数据库、数据库系统、数据库管理系统得概念。
数据:描述事物得符号记录称为数据。
数据得种类有文字、图形、图象、声音、正文等等。
数据与其语义就是不可分得。
数据库:数据库就是长期储存在计算机内、有组织得、可共享得数据集合。
数据库中得数据按一定得数据模型组织、描述与储存,具有较小得冗余度、较高得数据独立性与易扩展性,并可为各种用户共享。
数据库系统:数据库系统( DBS)就是指在计算机系统中引入数据库后得系统构成.数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
数据库管理系统:数据库管理系统 (DBMS)就是位于用户与操作系统之间得一层数据管理软件.用于科学地组织与存储数据、高效地获取与维护数据.DBMS主要功能包括数据定义功能、数据操纵功能、数据库得运行管理功能、数据库得建立与维护功能.2.使用数据库系统有什么好处?使用数据库系统得好处就是由数据库管理系统得特点或优点决定得.使用数据库系统得好处很多,例如可以大大提高应用开发得效率,方便用户得使用,减轻数据库系统管理人员维护得负担等。
为什么有这些好处,可以结合第 5题来回答。
使用数据库系统可以大大提高应用开发得效率。
因为在数据库系统中应用程序不必考虑数据得定义、存储与数据存取得具体路径,这些工作都由DBMS来完成。
此外,当应用逻辑改变,数据得逻辑结构需要改变时,由于数据库系统提供了数据与程序之间得独立性。
数据逻辑结构得改变就是DBA得责任,开发人员不必修改应用程序,或者只需要修改很少得应用程序。
从而既简化了应用程序得编制,又大大减少了应用程序得维护与修改。
使用数据库系统可以减轻数据库系统管理人员维护系统得负担.因为 DBMS在数据库建立、运用与维护时对数据库进行统一得管理与控制,包括数据得完整性、安全性,多用户并发控制,故障恢复等等都由DBMS执行。
数据库系统概论作业2答案1、答:CREATE TABLE Movie(Title CHAR(30),Year INT,Length INT);CREATE TABLE Actor(Name CHAR(20),Address V ARCHAR(30),Gender CHAR(1),Birthdate DATE);CREATE Acts(MovieTitle CHAR(30),MovieYear INT,ActorName CHAR(20));2、答:1)SELECT A VG(Length),MIN(Length)FROM MovieWHERE Year=1999;2)SELECT ActorNameFROM ActsWHERE MovieYear=1999;3)SELECT M1.Title,M1.Year,M2.YearFROM Movie AS M1,Movie AS M2WHERE M1.Title=M2.Title AND M1.Year<M2.Year; 4)INSERT INTO Actor(Name,Gender)V ALUES(‘秀兰·邓波儿’,’F’);5)UPDATE Movie SET Length=109WHERE Title=’我的世界’;6)DELETE FROM MovieWHERE Year<1940;DELETE FROM ActsWHERE MovieYear<1940;3、答:ALTER TABLE MovieADD MovieDirector CHAR(20);4、答:1)SELECT Cno,CnameFROM CourseWHERE Teacher LIKE ‘刘%’;2)SELECT Sno,SnameFROM StudentWHERE Sage<22 AND Ssex=’F’;3)SELECT SnameFROM Student,SC,CourseWHERE Student.Sno=SC.Sno AND o=o AND Teacher LIKE ‘刘%’;4)SELECT SnameFROM Student,SC,CourseWHERE Student.Sno=SC.Sno AND o=o AND Cname=’程序设计’ AND Grade>90;5)SELECt SnameFROM StudentWHERE NOT EXISTS( SELECT *FROM SCWHERE Sno=Student.Sno AND Cno=’C3’);6)SELECT X.SnoFROM SC AS X,SC AS YWHERE X.Sno=Y.Sno AND o=’C1’ AND o=’C2’;5、答:1)SELECT Cno,A VG(Grade)FROM SC,CourseWHERE o=o AND Teacher LIKE ‘孙%’GROUP BY Cno;2)SELECT Cno,COUNT(*)FROM SCGROUP BY CnoORDER BY COUNT(*) DESC,Cno;6、答:1)INSERT INTO StudentV ALUES(990012,’梅立松’,20,’女’);2)DELETE FROM SCWHERE Sno IN( SELECT SnoFROM StudentWHERE Sname=’夏秋雨’);3)UPDATE SC SET Grade=1.1*GradeWHERE Cno IN( SELECT CnoFROM CourseWHERE Cname=’英语’);7、答:1)CREATE VIEW Myear ASSELECT *FROM movieWHERE Year>=1990 AND Year<=1999;2)SELECT Title,actorNameFROM Myear,ActsWHERE Acts.MovieTitle= Myear. Title AND Length>120;8、答:1)πStudentNameσCourse.CourseName=’数据库原理’ AND StudentCourse.Score>90Student StudentCourse2)a)σCourse.CourseName=’数据库原理’ AND StudentCourse.Score>90σCourse.CourseName=’数据库原理’和σStudentCourse.Score>90b)σCourseName=’数据库原理’Coursec)σScore>90StudentCourse3)原始语法树:πStudentNameσCourse.CourseName=’数据库原理’ AND StudentCourse.Score>90σStudent.StudentNo=StudentCourse.StudentNo ANDCourse.CourseNo=StudentCourse.CourseNo╳╳CourseStudent StudentCourse优化语法树(Student简写为S,Course简写为C)πSNameσS.SNo=SC.SNo╳πS.SNo,SName πSC.SNoS σo=o╳πSC.SNo,o πoσScore>90 σCName=’数据库原理’SC C9、答:事务T1可以分解为以下三个操作:1.读B2.运算B*23.运算结果写入A事务T2可以分解为以下三个操作:1.读A2.运算A+13.运算结果写入B两个事物的并发实际上就是以上两个事务中的六个操作的排列,因此有6!种调度方法,但不是每一种调度方法都有实际意义,例如:运算B*2的操作排列在读B的操作之前就没有意义。
1《数据库系统概论》作业2第三章 关系模式和关系运算一、假设学生选课数据库如下:Student (Sno ,Sname ,Age ,Dept )Couse (Cno ,Cname ,Teacher )SC (Sno ,Cno ,Score )用关系代数分别进行如下查询:(1)学号为9900111的学生的系别和年龄;(2)有不及格(成绩《60》学生的课程名;(3)计算机系有不及格课程的学生名单;(4)学生张林的“数据库原理”课成绩。
答案:(1)πDept ,Sage (σSno=9900111(Student ))(2)πCname (σscore<60(SCCourse )(3)πSname (σscore<60(SC σDept =‘计算机系’(Student )(4)πScore (σsname=‘张林’(Stident SC σCname=‘数据库原理’(Course ))二、分别用元组关系运算表示习题一中的查询。
(1)学号为9900111的学生的系别和年龄;(2)有不及格(成绩《60》学生的课程名;(3)计算机系有不及格课程的学生名单;(4)学生张林的“数据库原理”课成绩。
答案:(1){}9900111]1[]3[]2[]4[]1[))()(()2(=∧=∧=∧∃s s t s t s Student s t (2){})60]3[]1[]2[]2[]1[)()()(()3()2()1(<∧=∧=∧∧∃∃u c u c t u SC c Course u c t(3){})计算机系'']4[60]3[]1[]1[]2[]1[)()()()(()3()4()1(=∧<∧=∧=∧∧∃∃s u s u s t u SC s Student u s t (4)]1[]1[]3[]1[)(()()()()()(({)2()3()4()1(u s u t c Course u SC s Student c u s t=∧=∧∧∧∃∃∃ }'']2['']2[]1[]2[)数据库原理张林=∧=∧=∧c s c u三、用数据库逻辑规则表示习题一中的查询。
(1)学号为9900111的学生的系别和年龄;2(2)有不及格(成绩《60》学生的课程名;(3)计算机系有不及格课程的学生名单;(4)学生张林的“数据库原理”课成绩。
答案:(1)S (D,A ←Student(SNo,SN,A,D) AND SNO=9900111(2)C (CN) ← Course (CNo,CN) AND SC (SNo,CNo,S) AND S<60(3)S (S,N) ← Student(SNo,SN,A,D) AND SC (SNo,CNo,S) AND D=’计算机系’ AND S<60(4)U (S) ← Student(SNo,SN,A,D) AND SC (SNo,CNo,S) AND Course (CNo,CN)AND SN=’张林’ AND CN=’数据库原理’四、画出习题一中查询(4)的关系代数表达树。
答案:第四章 数据库语言SQL五、一个电影资料数据库有三个基本表:电影表Movie (含电影名、制作年份、长度、是否彩色、制片商)、演员表Actor (含演员姓名、地址、性别、出生年月)和电影主演表Acts (电影名、制作年份、演员姓名)。
用AQL 的建表语句建立这三个基本表,有注意合理地选择属性的数据类型。
答案:CREATE TABLE Movie (Title CHAR (30),Year INT ,Length INT);CREATE TABLE Actor (Name CHAR (20),Gender V ARCHAR (30),Length CHAR (1)Birthdate DATECREATE TABLE Acts (MoiveTitle CHAR(30),MoiveYear INT,ActorName CHAR(20)六、在习题五建立的表的基础上,用SQL实现如下查询或更新操作:(1)统计1999年制作电影的平均长度和最短长度;(2)在1999年主演过电影的演员姓名;(3)所有同名电影各自的电影名和制作年份;(4)往演员关系Actor插入一个演员记录,具体的数据值由你指定;(5)把电影“我的世界“的长度改为109分钟;(6)删除1940年以前制作的所有电影记录以及电影主演记录。
答案:(1)SELECT A VG (Length),MIN(Length)FROM MovieWHERE Year=1999;(2)SELECT ActorNameFROM ActsWHERE MovieYear=1999;(3)SELECT M1.Title,M1.Year,M2.YearFROM Movie AS M1, Movie AS M2WHERE M1.Title=M2.Title AND M1.Year<M2.Year(4)INSERT INTO Actor(Name,Gender)V ALUES(‘秀兰·邓波儿’,’F’);(5)UPDATE Movie SET Length=109WHERE Title=’我的世界’;(6)DELETE FROM MovieWHERE Year<1940;DELETE FROM ActsWHERE MovieYear<1940;七、在习题五建立的表但是基础上,要求为Movie关系增加一个属性MovieDirector(电影导演)。
用SQL实现这种关系模式的改变。
答案:ALTER TABLE MovieADD MovieDirector CHAR(20)八、假设学生炫课数据库如下:Student(Sno,Sname,Sage,Ssex)Course(Cno,Cname,Teacher)SC(Sno,Cno,Grade)用SQL语句表达下列查询:(1)找出刘老师所授课程的课程号和课程名。
(2)找出年龄小于22岁女学生的学号和姓名。
(3)找出至少选修刘老师讲的一门课的学生姓名。
3(4)找出“程序设计”课成绩在90分以上的学生姓名。
(5)找出不学C3课的学生姓名。
(6)找出至少选修C1课和C2课的学生学号。
答案:(1)SELECT Cno,CnameFORM CourseWHIRE Teacher LIKE ‘刘%’;(2)SELECT Sno,SnameFORM StudentWHIRE Sage<22 AND Ssex=’F’;(3)SELECT SnameFORM Student,SC,CourseWHIRE Student.Sno=SC.Sno AND o=o AND Teacher LIKE ’刘%’;(4)SELECT SnameFORM Student,SC,CourseWHIRE Student.Sno=SC.Sno AND o=oAND Cname=’程序设计’ AND Grade>90;(5)SELECT SnameFORM StudentWHIRE NOT EXISTS(SELECT *FORM SCWHIRE Sno=Student.Sno AND Cno=’C3’);(6)SELECT X.SnoFROM SC AS X, SC AS YWHERE X.Sno=Y.Y.Sno AND o=’C1’ AND o=’C2’;九、按照习题八的数据库模式谢出下列查询:(1)求孙老师讲的每门课的学生平均成绩。
(2)统计选修各门课的学生人数。
输出课程号和人数。
查询结果按人数降序排列,若人数相同,则按课程号升序排列。
答案:(1)SELECT Cno,A VG(Grade)FORM SC,CourseWHERE o=o AND Teacher LIKE ‘孙%’GROUP BY Cno(2)SELECT Cno,COUNT(*)FORM SCGROUP BY CnoORDER BY COUNT(*)DESC,Cno十、用SQL的更新语句表达对学生-课程数据库(关系模式见习题八)的下列更新操作:(1)往学生关系Student中插入一个学生元组(990012,梅立松,20,女)。
4(2)从学生选课关系SC中删除夏春秋同学的所有元组。
(3)在学生选课关系SC中,把英语课的成绩提高10%。
答案:(1)INSERT INTO StudentV ALUES(990012,’梅立松’,20,’女’);(2)DELETE FORM SCWHERE Sno IN(SELECT SnoFORM StudentWHERE Sname=’夏春秋’);(3)UPDATE SC SET Grade=1.1*GradeWHERE Cno IN(SELECT CnoFORM CourseWHERE Cname=’英语’);5。