《2022年数据库系统概论借鉴 .pdf》由会员分享,可在线阅读,更多相关《2022年数据库系统概论借鉴 .pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据库系统概论期末复习题3 一、 (共 12 分)用 E/R 图来描述关系模式电影Movie(Title , Year, Type, Length ) 和演员 Actor (Name,Birthday )表示的数据库;二、 (每小题 6 分,共 18 分)用 SQL的有关语句定义1)学生关系 Student ,包括学号Sno、姓名 SN 、年龄 SA ;2)课程关系 Course ,包括课程号Cno、课程名 CN 、任课教师CT;3)学生选课关系SC ,包括 Sno、Cno和成绩 G。注意:说明主键码和外键码(如果有的话)。参考答案:1)CREATE TABLE Student( Sno IN
2、T PRIMARY KEY, SN CHAR(30), SA INT ); 2) CREATE TABEL Course( Cno INT PRIMARY KEY, CN CHAR(30), CT CHAR(30) ); 3) CREATE TABEL SC( Sno INT, Cno INT, G INT, PRIMAYR KEY(Sno,Cno), FOREIGN KEY(Sno) REFERENCES Student(Sno), FOREIGN KEY(Cno) REFERENCES Course(Cno) ); 三、 (共 14 分)按题二的关系模式用SQL 的有关语句1) 向学生关系
3、Student 中插入一个学生元组(990012,梅立松, 20)2) 从学生选课关系SC 中删除夏春秋同学的所有元组3) 在学生选课关系中,把英语课的成绩提高10% 参考答案:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 4 页 - - - - - - - - - 1) INSERT INTO Student VALUES( “990012” , “梅立松”,20);2) DELETE FROM SC WHERE Sno IN (SELECT Sno FROM Stu
4、dent WHERE Sname=” 夏春秋 ” );3)UPDATE SC SET Grade=1.1*Grade WHERE Cno IN (SELECT Cno FROM Course WHERE Cname=” 英语 ” );四、 (共 8分)关系数据模型如下:学生S(SNO,CN,SEX,AGE )课程C(CNO ,CN,PCNO) PCNO 为直接先行课程选课SC(SNO,CNO ,GR)GR 为课程考试成绩用 SQL 写出查询程序:查询课程名和直接先行课的课程名以及间接先行课的课程名。参考答案:SELECT CN, CX.CN ,CY.CN FROM C,C AS CX,C AS
5、 CY WHERE C.PCNO=CX.CNO ;五、 (共 12 分)根据题四关系模式,用SQL 写出查询程序:1)将选修课程“DB ”的学生学号SNO,姓名 SN 建立视图SDB 2)所有学生都选修的课程名CN 参考答案:1) CREATE VIEW SDB AS SELECT SNO,SN FROM S,SC,C WHERE S.SNO=SC.SNO AND SC.CNO=C.CNO AND C.CN= ” DB ” ;2)SELECT CN FROM C WHERE NOT EXISTS (SELECT * FROM S WHERE NOT EXISTS (SELECT * FROM
6、SC WHERE SNO=S.SNO AND CNO=C.CNO) ;六、 (共 12 分)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 4 页 - - - - - - - - - 按嵌入式SQL 的格式插入任意一个学生的学号、姓名和年龄。参考答案:(1)说明:EXEC SQL BEGIN DECLARE SECTION ;Int sno;Char sname30;Int sage;Char SQLSTATE6 ;EXEC SQL END DECLARE SECTION
7、;(2)赋值:Sno:=01001;Sname: =“赵华”;Sage:=19;(3)插入:EXEC SQL INSERT INTO Student VALUES (: sno, :sname, :sage) ;七、 (12 分)设 T1、T2、 T3 是如下三个事务。T1:A=A+2 T2:A=A*2 T3:A=A*2 A 的初始值为1。设 T1、T2 和 T3 可以并发执行,并对其操作的顺序不加限制,则它们的并发执行可能产生哪几种结果(写出最后的A 值)参考答案:T1、T2 和 T3 并发执行可能产生如下6 种结果。操作顺序最后的 A 值T1 T2 T3 36 T1 T3 T2 18 T2
8、 T1 T3 16 T2 T3 T1 6 T3 T1 T2 6 T3 T2 T1 4 八、 (12 分)一个电影资料数据库假定有3 个基本表:电影表MOVIE 、演员表Actor 和电影主演表 Acts。这三个关系模式Movie 关系的属性包括电影名、制作年份、长度等;Actor 关系得属性包括演员名、地址、性别、生日等;电影主演表Acts 包括电影名、 、制作年份、演员姓名等。 用含有键码和外键码说明的SQL 建表语句建立电影表Movie 、演员表 Actor 和电影主演表 Acts。参考答案:CREATE TABLE Movie (Title CHAR (30) ,Year INT ,名师
9、资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 4 页 - - - - - - - - - Length INT PRIMARY KEY (Title,Year) ;CREATE TABLE Actor ( Name CHAR(20) PRIMARY KEY ,Address VARCHAR (30) ,Gender CHAR (1) ,Birthdate DATE ) ;CREATE TABLE Actor ( MovieTitle CHAR(30) ,MovieYear INT ,ActorName CHAR(20) ,PRIMARY KEY(MovieTitle,MovieYear ,ActorName ) REFERENCES Movie (Title,Year)FOREIGN KEY (ActorName )REFERENCES Actor (Name) ;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 4 页 - - - - - - - - -
限制150内