《2018年电大-数据库应用技术-综合应用题(共5页).doc》由会员分享,可在线阅读,更多相关《2018年电大-数据库应用技术-综合应用题(共5页).doc(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上综合应用题1 图书销售(本题10分)题目1题干写出创建如下三张数据表的SQL语句。(本题4分)“图书”表结构:书号:普通编码定长字符类型,长度为10,主键。书名:普通编码可变长字符类型,长度为20,非空。类别:统一字符编码定长字符类型,长度为4,取值为:“高等数学”、“量子力学”、“国学基础”。出版日期:日期类型。单价:整型。“书店”表结构:书店编号:普通编码定长字符类型,长度为20,主键。书店名:普通编码可变长字符类型,长度为30,非空。地址:统一字符编码可变长字符类型,长度为30。“销售”表结构:书号:普通编码定长字符类型,长度为10,引用图书表的外键。书店编号:
2、普通编码定长字符类型,长度为20,引用书店表的外键。销售时间:日期时间类型。销售数量:整型。主键:(书号,书店编号,销售时间)。答:CREATE TABLE 图书(书号 char(10) primary key,书名 varchar(20) not null,类别 nchar(4) CHECK (类别 IN(高等数学,量子力学, 国学基础),出版日期 date,单价 int)CREATE TABLE 书店(书店编号 char(20) primary key,书店名 varchar(30) not null,地址 nvarchar(30)CREATE TABLE 销售(书号 char(10),书
3、店编号 char(20),销售时间 datetime,销售数量 int,Primary key(书号,书店编号,销售时间),Foreign key(书号) references 图书(书号),Foreign key(书店编号) references 书店(书店编号)题目2题干依据第1题所创建的三张表,写出完成下列操作的SQL语句。(本题4分)1) 查询“量子力学”类图书的书名和出版日期。2) 查询单价大于等于60的图书的销售情况,列出书名、类别、销售时间和销售数量。3) 将“量子力学”类图书的单价降低10。4) 在书店表中插入一行数据,书店编号:SD100,书店名:新华书店,地址:西单。答:1
4、)SELECT 书名,出版日期 FROM 图书 WHERE 类别 = 量子力学2)SELECT 书名, 类别, 销售时间, 销售数量 FROM 图书 a JOIN 销售 b ON a.书号 = b.书号 WHERE 单价 = 603)UPDATE 图书SET 单价 = 单价 - 10 WHERE 类别 = 量子力学4)INSERT INTO 书店VALUES(SD100,新华书店,西单)题目3题干依据第1题所创建的三张表,写出创建满足如下要求的视图的SQL语句:查询销售了“高等数学”类图书的书店名和地址。(本题2分)答:CREATE VIEW V1 ASSELECT 书店名,地址 FROM 书
5、店 aJOIN 销售 b ON a.书店编号 = b.书店编号 JOIN 图书 c ON c.书号 = b.书号 WHERE 类别 = 高等数学综合应用题2 教师授课(本题10分)题目4题干写出创建如下三张数据表的SQL语句。(本题4分)“教师”表结构:教师号:普通编码定长字符类型,长度为10,主键。教师名:普通编码可变长字符类型,长度为20,非空。所在部门:普通编码可变长字符类型,长度为30。职称:普通编码定长字符类型,长度为6,取值为:“教授”、“副教授”、“其他”。“课程”表结构:课程号:普通编码定长字符类型,长度为20,主键。课程名:普通编码可变长字符类型,长度为40,非空。学时数:微
6、整型。开课学期:微整型。“授课”表结构:教师号:普通编码定长字符类型,长度为10,引用教师表的外键。课程号:普通编码定长字符类型,长度为20,引用课程表的外键。授课时数:整型。授课年份:整型。主键:(教师号,课程号,授课年份)。答:CREATE TABLE 教师(教师号 char(10) primary key,教师名 varchar(20) not null,所在部门 varchar(30),职称 char(6) CHECK (职称 IN(教授,副教授, 其他)CREATE TABLE 课程(课程号 char(20) primary key,课程名 varchar(40) not null,
7、学时数 tinyint,开课学期 tinyint)评分要点:共1分。CREATE TABLE 授课(教师号 char(10),课程号 char(20),授课时数 int,授课年份 int,Primary key(教师号,课程号,授课年份),Foreign key(教师号) references 教师(教师号),Foreign key(课程号) references 课程(课程号)题目5题干依据第1题所创建的三张表,写出完成下列操作的SQL语句。(本题4分)1) 查询“教授”职称的教师姓名和所在部门。2) 查询每学期开设的学时数大于40的课程门数。3) 查询2016年全部课程的授课情况,列出课程
8、名、学时数、教师名和授课时数。删除没人讲授的课程。答:1) SELECT 教师名, 所在部门FROM 教师 WHERE 职称 = 教授2) SELECT 开课学期,COUNT(*) 课程门数FROM 课程WHERE 学时数 40GROUP BY 开课学期3) SELECT 课程名, 学时数, 教师名, 授课时数 FROM 课程 JOIN 授课 ON 课程.课程号 = 授课.课程号 JOIN 教师 ON 教师.教师号 = 授课.教师号 WHERE 授课年份 = 20164) DELETE FROM 课程 WHERE 课程号 NOT IN (SELECT 课程号 FROM 授课)题目6题干依据第1题所创建的三张表,写出创建满足如下要求的视图的SQL语句:查询2016授课年份全体授课教师的教师名、所授的课程名和授课时数。(本题2分)答:CREATE VIEW V1 ASSELECT 教师名,课程名,授课时数FROM 授课 JOIN 教师 ON 授课.教师号 = 教师.教师号JOIN 课程 ON 课程.课程号 = 授课.课程号WHERE 授课年份 = 2016专心-专注-专业