《数据库系统概论》形考册答案.docx
- 文档编号:9728978
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:27
- 大小:27.26KB
《数据库系统概论》形考册答案.docx
《《数据库系统概论》形考册答案.docx》由会员分享,可在线阅读,更多相关《《数据库系统概论》形考册答案.docx(27页珍藏版)》请在冰豆网上搜索。
《数据库系统概论》形考册答案
《数据库系统概论》作业1
1.简述数据、数据模型、数据库、关系数据库、数据库管理系统、数据库系统的概念。
答:
数据:
存储在计算机内用来描述事物特征的各种符号及其组合,称为数据。
它不但包括数字,还包括文字、图形、图像、声音等。
数据模型:
数据模型是一种对客观事物抽象化的表现形式。
数据模型首先要真实地反映现实世界,;其次要易于理解,和人们对外部事物的认识相一致;最后要便于实现,因为最终是要由计算机来处理。
数据模型通常由数据结构、数据操作和完整性约束三要素组成。
数据库:
简称DB,是由DBMS管理的数据的聚集。
是储存在计算机内具有一定结构的数据集合。
关系数据库:
是以关系模型为基础的数据库。
或者说数据库里的数据可以用一个二维表的的形式表示的数据库。
数据库管理系统:
简称DBMS,是专门用于建立和管理数据库的一套软件,介于应用程序和操作系统之间。
它不仅具有最基本的数据管理功能,还能保证数据的完整性、安全性、提供多用户的并发控制,当数据库出现故障时对系统进行恢复。
DBMS主要由查询处理程序、事务处理程序和存储管理程序等组成。
数据库系统:
简称DBS,使指引进数据库技术后的计算机系统,它包括和数据库有关的整个系统:
计算机软硬件系统、数据库、DBMS、应用程序以及数据库管理员和用户等等。
2.答:
主要特点:
数据结构化;数据共享性好,冗余度小,数据独立性好;数据由DBMS统一管理和控制,从而保证多个用户能并发、安全可靠地访问,而一旦出现故障,能有效恢复。
3.假设学生关系Student包括五个属性:
学号StudentNo、姓名StudentName、年龄StudentAge、性别StudentSex和所在系Department。
(1)指出该关系的键码和属性的类型;2)给出三个适当的元组。
答:
(1)该关系的键码是:
学号;
属性的类型:
学号:
字符型;姓名:
字符型;年龄:
整型;性别:
布尔型;所在系:
字符型。
(2)学号 姓名年龄性别 所在系
991510000 张三25 .T. 计算机
991510078 李四24 .T. 化学
981501008 王燕25 .F. 中文
4.同三
5.请为计算机经销商设计一个数据库,要求包括生产厂商和产品的信息。
生产厂商的信息包括名称、地址、电话等;产品的信息包括生产商、品牌、配置、近价等。
试用ODL描述这个数据库,注意要为所有的属性和联系选择适当的类型,并且指出每个类的键码。
答案:
interface Produce
(key name)
{ attribute string name;
attribute string address;
attribute string tel;
relationaship Set
inverse Product:
:
ProducedBy;}
interface Product
(key (brand,model))
{ attribute string brand;
attribute string model;
attribute integer price;
relationaship Producer producedBy
inverse Producer:
:
Produces;}
7.假设题5的数据库中,计算机产品类有了一个笔记本电脑子类,该子类本身拥有尺寸(长、宽、厚度)、电池型号等属性,试重新设计数据库,将增加的部分分别用ODL和E/R图描述。
答:
(1)ODL:
interface ComputerProduct:
Product{
}
interface PortableComputer:
ComputerProduct{
attribute float Length;
attribute float Wide;
attribute float Thick;
attribute string BatteryType
}
Product
Brand
Name
Configure
Begetter
Type
Inprice
isa
ComputerProduct
isa
PortableComputer
Length
Wide
Thickk
(2)E/R图:
8、如果某关系的实例满足下列条件之一,要表示该实例,有多少种不同的方法(考虑元组的顺序和属性的顺序):
(1) 3个属性,3个元组
(2) 4个属性,5个元组
(3) m个属性,n个元组
答:
(1) 3!
*3!
=36
(2) 4!
*5!
=24*120=2880
(3)m个属性可有m!
种不同的排列顺序,n个元组可有n!
种不同的排列顺序,因此共有m!
*n!
种不同的排列顺序。
9.将题5的ODL设计转换成关系数据库模型。
答案:
转换为关系模式为:
Producer(name,address,tel);
Product
(brand,model,name);(注:
其中name为厂商名,若同一厂商提供多种产品需建立多个记录)
10.下图表示的是一个航空公司的E/R图,试将其转换为关系数据库模式。
Customer
Flight
No
Name
Date
Seat
Number
Kint
Address
Bookingg
其中Customer表示乘客,有三个属性:
乘客号No,姓名Name和地址Address,Flight表示航班,页有三个属性:
航班号Number,日期Date和机型Kind;Booking表示乘客订票的信息,有一个属性:
Seat。
答案:
转换为关系模式为:
Customer(No,Name,Address)
Flight(Number,Date,Kint)
Booking(No,Number,Date,Seat)
11.假设学生选课数据库如下:
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(SC) Course)
(3)πSname(σscore<60(SC) σDept=‘计算机系’(Student)
(4)πScore(σsname=‘张林’(Stident) SC
(σCname=‘数据库原理’(Course))
12.分别用元组关系运算和域关系演算表示题11中的查询。
。
(1)学号为9900111的学生的系别和年龄;
(2)有不及格(成绩《60》学生的课程名;
(3)计算机系有不及格课程的学生名单;
(4)学生张林的“数据库原理”课成绩。
答案:
元组关系运算:
(1)
(2)(3)
(4) 域关系演算:
1)πDept,Sage(σSno=9900111(Student))
(2)πCname(σscore<60(SC)∞ Course)
(3)πSname(σscore<60(SC)∞ σDept=‘计算机系’(Student)
(4)πScore(σsname=‘张林’(Stident)∞SC∞(σCname=‘数据库原理’(Course))
12
13.用数据库逻辑规则表示习题一中的查询。
(1)学号为9900111的学生的系别和年龄;
(2)有不及格(成绩《60》学生的课程名;
(3)计算机系有不及格课程的学生名单;
(4)学生张林的“数据库原理”课成绩。
答案:
(1)S(D,A←Student(SNo,SN,A,D)ANDSNO=9900111
(2)C(CN)←Course(CNo,CN)ANDSC(SNo,CNo,S)ANDS<60
(3)S(S,N)←Student(SNo,SN,A,D)ANDSC(SNo,CNo,S)AND
D=’计算机系’ANDS<60
(4)U(S)←Student(SNo,SN,A,D)ANDSC(SNo,CNo,S)AND
Course(CNo,CN)
ANDSN=’张林’ANDCN=’数据库原理’
14.画出题11中查询(4)的关系代数表达树。
πScore
σSName=’张林’
σCName=’数据库原理’
Student
Coure
SC
《数据库系统概论》作业2
1.一个电影资料数据库有三个基本表:
电影表Movie(含电影名、制作年份、长度、是否彩色、制片商)、演员表Actor(含演员姓名、地址、性别、出生年月)和电影主演表Acts(电影名、制作年份、演员姓名)。
用AQL的建表语句建立这三个基本表,有注意合理地选择属性的数据类型。
答案:
CREATETABLEMovie(
TitleCHAR(30),
YearINT,
LengthINT
);
CREATETABLEActor(
NameCHAR(20),
GenderVARCHAR(30),
LengthCHAR
(1)
BirthdateDATE
CREATETABLEActs(
MoiveTitleCHAR(30),
MoiveYearINT,
ActorNameCHAR(20)
2.在题1建立的表的基础上,用SQL实现如下查询或更新操作:
(1)统计1999年制作电影的平均长度和最短长度;
(2)在1999年主演过电影的演员姓名;
(3)所有同名电影各自的电影名和制作年份;
(4)往演员关系Actor插入一个演员记录,具体的数据值由你指定;
(5)把电影“我的世界“的长度改为109分钟;
(6)删除1940年以前制作的所有电影记录以及电影主演记录。
答案:
(1)SELECTAVG(Length),MIN(Length)
FROMMovie
WHEREYear=1999;
(2)SELECTActorName
FROMActs
WHEREMovieYear=1999;
(3)SELECTM1.Title,M1.Year,M2.Year
FROMMovieASM1,MovieASM2
WHEREM1.Title=M2.TitleANDM1.Year (4)INSERTINTOActor(Name,Gender) VALUES(‘秀兰·邓波儿’,’F’); (5)UPDATEMovieSETLength=109 WHERETitle=’我的世界’; (6)DELETEFROMMovie WHEREYear<1940; DELETEFROMActs WHEREMovieYear<1940; 3.在题1建立的表但是基础上,要求为Movie关系增加一个属性MovieDirector(电影导演)。 用SQL实现这种关系模式的改变。 答案: ALTERTABLEMovie ADDMovieDirectorCHAR(20) 4.假设学生一课程数据库关系模式如下: Student(Sno,Sname,Sage,Ssex) Course(Cno,Cname,Teacher) SC(Sno,Cno,Grade) 用SQL语句表达下列查询: (1)找出刘老师所授课程的课程号和课程名。 (2)找出年龄小于22岁女学生的学号和姓名。 (3)找出至少选修刘老师讲的一门课的学生姓名。 (4)找出“程序设计”课成绩在90分以上的学生姓名。 (5)找出不学C3课的学生姓名。 (6)找出至少选修C1课和C2课的学生学号。 答案: (1)SELECTCno,Cname FORMCourse WHIRETeacherLIKE‘刘%’; (2)SELECTSno,Sname FORMStudent WHIRESage<22ANDSsex=’F’; (3)SELECTSname FORMStudent,SC,Course WHIREStudent.Sno=SC.SnoANDSC.Cno=Course.CnoANDTeacherLIKE’刘%’; (4)SELECTSname FORMStudent,SC,Course WHIREStudent.Sno=SC.SnoANDSC.Cno=Course.Cno ANDCname=’程序设计’ANDGrade>90; (5)SELECTSname FORMStudent WHIRENOTEXISTS (SELECT* FORMSC WHIRESno=Student.SnoANDCno=’C3’); (6)SELECTX.Sno FROMSCASX,SCASY WHEREX.Sno=Y.Y.SnoANDX.Cno=’C1’ANDY.Cno=’C2’; 5.按照题4的数据库模式谢出下列查询: (1)求孙老师讲的每门课的学生平均成绩。 (2)统计选修各门课的学生人数。 输出课程号和人数。 查询结果按人数降序排列,若人数相同,则按课程号升序排列。 答案: (1)SELECTCno,AVG(Grade) FORMSC,Course WHERESC.Cno=Course.CnoANDTeacherLIKE‘孙%’ GROUPBYCno (2)SELECTCno,COUNT(*) FORMSC GROUPBYCno ORDERBYCOUNT(*)DESC,Cno 6.用SQL的更新语句表达对学生-课程数据库的下列更新操作: (1)往学生关系Student中插入一个学生元组(990012,梅立松,20,女)。 (2)从学生选课关系SC中删除夏春秋同学的所有元组。 (3)在学生选课关系SC中,把英语课的成绩提高10%。 答案: (1)INSERTINTOStudent VALUES(990012,’梅立松’,20,’女’); (2)DELETEFORMSC WHERESnoIN (SELECTSno FORMStudent WHERESname=’夏春秋’); (3)UPDATESCSETGrade=1.1*Grade WHERECnoIN (SELECTCno FORMCourse WHERECname=’英语’); 8.从学生选课数据库中查询选修“数据库原理”课并且成绩在90分以上的学生名单,SQL语句序列如下: SELECTStudentName FORMStudent,Course,StudentCourse WHEREStudent.StudentNo=StudentCourse.StudentNo ANDCourse.CourseNo=StudentCourse.CourseNo ANDCourse.CourseName=’数据库原理’ANDStudentCourse.Score>90 9.设T1、T2是如下两个事务: T1: A=B*2 T2: B=A+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库系统概论 数据库 系统 概论 形考册 答案