国家开放大学期末统一考试《数据库应用技术》试题统合题.docx
《国家开放大学期末统一考试《数据库应用技术》试题统合题.docx》由会员分享,可在线阅读,更多相关《国家开放大学期末统一考试《数据库应用技术》试题统合题.docx(26页珍藏版)》请在冰点文库上搜索。
国家开放大学期末统一考试《数据库应用技术》试题统合题
数据库应用技术本科综合应用题
国家开放大学2020年春季学期期末统一考试数据库应用技术试题2020年7月
三、综合应用题(本题共3个小题,共40分)
31.(本题10分)写出创建如下三张数据表的SQL语句。
“教师”表结构:
教师号:
普通编码定长字符类型,长度为10,主键。
教师名:
普通编码可变长字符类型,长度为20,非空。
所在部门:
普通编码可变长字符类型,长度为30。
职称:
普通编码定长字符类型,长度为6,取值为:
“教授”、“副教授”、“其他”。
“课程”表结构:
课程号:
普通编码定长字符类型,长度为20,主键。
课程名:
普通编码可变长字符类型,长度为40,非空。
学时数:
微整型。
开课学期:
微整型
“授课”表结构:
教师号:
普通编码定长字符类型,长度为10,引用教师表的外键。
课程号:
普通编码定长字符类型,长度为20,引用课程表的外键。
授课时数:
整型。
授课年份:
整型。
主键:
(教师号,课程号,授课年份)。
参考答案:
CREATETABLE教师(
教师号char(10)primarykey,
教师名varchar(20)notnull,
所在部门varchar(30),
职称char(6)CHECK(职称IN('教授','副教授','其他'))
)
CREATETABLE课程(
课程号char(20)primarykey,
课程名varchar(40)notnull,
学时数tinyint,
开课学期tinyint
)
CREATETABLE授课(
教师号char(10),
课程号char(20),
授课时数int,
授课年份int,
Primarykey(教师号,课程号,授课年份),
Foreignkey(教师号)references教师(教师号),
Foreignkey(课程号)references课程(课程号)
)
32.依据第1题所创建的三张表,写出完成下列操作的SQL语句。
(本题共20分,每小题5分)
(1)查询教授职称的教师姓名和所在部门。
(2)查询每学期开设的学时数大于40的课程门数。
(3)查询2019年全部课程的授课情况,列出课程名、学时数、教师名和授课时数。
(4)删除没人讲授的课程。
参考答案:
(1)SELECT教师名,所在部门
FROM教师
WHERE职称=‘教授'
(2)SELECT开课学期,COUNT(*)课程门数
FROM课程
WHERE学时数>40
GROUPBY开课学期
(3)SELECT课程名,学时数,教师名,授课时数
FROM课程JOIN授课ON课程.课程号=授课.课程号
JOIN教师ON教师.教师号=授课.教师号
WHERE授课年份=2019
(4)DELETEFROM课程
WHERE课程号NOTIN(SELECT课程号FROM授课)
33.依据第1题所创建的三张表,写出创建满足如下要求的视图的SQL语句:
查询2019授课年份全体授课教师的教师名、所授的课程名和授课时数。
(本题10分)
参考答案:
CREATEVIEWV1AS
SELECT教师名,课程名,授课时数
FROM授课JOIN教师ON授课.教师号=教师.教师号
JOIN课程ON课程.课程号=授课.课程号
WHERE授课年份=2019
国家开放大学2019年春季学期期末统一考试数据库应用技术试题2019年7月
三、综合应用题(本题共3个小题,共40分)
31.写出创建如下三张数据表的SQL语句。
(本题10分)
“教师”表结构:
教师号:
普通编码定长字符类型,长度为10,主键。
教师名:
普通编码可变长字符类型,长度为10,非空。
职称:
统一字符编码定长字符类型,长度为3,取值为:
“教授”、“副教授”、“讲师”。
所在部门:
普通编码可变长字符类型,长度为20。
“课程”表结构:
课程号:
普通编码定长字符类型,长度为20,主键。
课程名:
普通编码可变长字符类型,长度为30,非空。
开课学期:
微整型。
学时:
定点小数类型,小数点前2位,小数点后1位
“授课”表结构:
教师号:
普通编码定长字符类型,长度为10,引用教师表的外键。
课程号:
普通编码定长字符类型,长度为20,引用课程表的外键。
授课学年:
普通编码定长字符类型,长度为6,非空。
主键:
(教师号,课程号,授课学年)。
32.依据第31题所创建的三张表,写出完成下列操作的SQL语句。
(本题共20分,每小题5分)
(1)查询全部有“教授”职称的教师名和所在部门。
(2)查询学时大于等于30的课程的授课情况,列出课程名、学时和授课学年。
(3)删除“讲师”职称的授课记录。
(4)在课程表中插入一行数据,课程号:
K100,课程名:
新课程,开课学期:
未定,学时:
24。
33.依据第31题所创建的三张表,写出创建满足如下要求的视图的SQL语句:
查询“计算机学院”全体教师的授课情况,列出教师名、讲授的课程名及授课学年。
(本题10分)
三、综合应用题(本题共3个小题,共40分)
31.(本题10分)参考答案及评分要点:
CREATETABLE教师(
教师号
教师名
职称
char(10)primarykey,
varchar(10)notnull,
nchar(3)CHECK(类别IN('教授',‘副教授',‘讲师')),
所在部门varchar(20),
)
评分要点:
主键1分;CHECK2分;其他1分;共计4分。
CREATETABLE课程(
课程号
char(20)primarykey,
varchar(30)notnull,
tinyint,
课程名
开课学期
学时
numeric(3,1)
)
评分要点:
主键1分;其他1分;共计2分。
CREATETABLE授课(
教师号
char(10),
char(20),
课程号
授课学年char(6)notnull,
Primarykey(教师号,课程号,授课学年),
Foreignkey(教师号)references教师(教师号),
Foreignkey(课程号)references课程(课程号)
评分要点:
主键1分;2个外键共2分;其他1分;共计4分。
32.(本题共20分,每小题5分)参考答案及评分要点:
(1)SELECT教师名,所在部门FROM教师WHERE职称=‘教授
评分要点:
SELECT部分2分,FROM部分1分,WHERE部分2分
(2)SELECT课程名,学时,授课学年
FROM课程aJOIN授课bONa.课程号=b.课程号
WHERE学时>=30
评分要点:
SELECT部分2分,FROM部分2分,WHERE部分1分
(3)DELETE授课
FROM教师aJOIN授课bONa.教师号=b.教师号
WHERE职称='讲师'
评分要点:
DELETE部分1分,FROM部分2分,WHERE部分2分
(4)INSERTINTO课程
VALUES('K100','新课程',NULL,24)
评分要点:
INSERT部分2分,VALUES部分3分
33.(本题10分)参考答案及评分要点:
CREATEVIEWV1AS
SELECT教师名,课程名,授课学年FROM课程a
JOIN教师cONC.教师号=B.教师号
WHERE所在部门='计算机学院'
评分要点:
每行2分
国家开放大学(中央广播电视大学)2017年秋季学期“开放本科”期末考试数据库应用技术试题2018年1月
四、综合应用题(本题共3个小题,共40分)
28.(本题10分)写出创建如下三张数据表的SQL语句。
“教师”表结构:
教师号:
普通编码定长字符类型,长度为10,主键。
教师名:
普通编码可变长字符类型,长度为10,非空。
职称:
统一字符编码定长字符类型,长度为3,取值为:
“教授”、“副教授”、“讲师”、“助教”。
所在部门:
普通编码可变长字符类型,长度为20.
“课程”表结构:
课程号:
普通编码定长字符类型,长度为20,主键。
课程名:
普通编码可变长字符类型,长度为30,非空。
开课学期:
微整型。
学时:
小整型。
“授课”表结构:
教师号:
普通编码定长字符类型,长度为10,引用教师表的外键。
课程号:
普通编码定长字符类型,长度为20,引用课程表的外键。
授课学年:
普通编码定长字符类型,长度为6,非空。
主键:
(教师号,课程号,授课学年)。
参考答案:
CREATETABLE教师(
教师号char(10)primarykey,
教师名varchar(10)notnull,
职称nchar(3)CHECK(类别IN('教授','副教授','讲师','助教')),
所在部门varchar(20),
)
评分要点:
主键1分;CHECK2分;其他1分;共计4分。
CREATETABLE课程(
课程号char(20)primarykey,
课程名varchar(30)notnull,
开课学期tinyint,
学时smallint
)
评分要点:
主键1分;其他1分;共计2分。
CREATETABLE授课(
教师号char(10),
课程号char(20),
授课学年char(6)notnull,
Primarykey(教师号,课程号,授课学年),
Foreignkey(教师号)references教师(教师号),
Foreignkey(课程号)references课程(课程号)
)
评分要点:
主键1分;2个外键共2分;其他1分;共计4分。
29.依据第28题所创建的三张表,写出完成下列操作的SQL语句。
(本题共20分,每小题5分)
(1)查询“副教授”职称的教师名和所在部门。
(2)查询学时大于等于72的课程的授课情况,列出课程名、学时和授课学年。
(3)删除“助教”职称的授课记录
(4)在课程表中插人一行数据,课程号:
K1605,课程名:
新课程,开课学期:
未定,学时:
48.
参考答案及评分要点:
(1)SELECT教师名,所在部门FROM教师WHERE职称=‘副教授'
(2)SELECT课程名,学时,授课学年
FROM课程aJOIN授课bONa.课程号=b.课程号
WHERE学时>=72
(3)DELETE授课
FROM教师aJOIN授课bONa.教师号=b.教师号
WHERE职称=‘助教'
(4)INSERTINTO课程
VALUES('K1605','新课程',NULL,48)
30.依据第28题所创建的三张表,写出创建满足如下要求的视图的SQL语句:
查询“自动化学院”全体教师的授课情况,列出教师名、讲授的课程名及授课学年。
(本题10分)
参考答案及评分要点:
CREATEVIEWVIAS
SELECT教师名,课程名,授课学年FROM课程a
JOIN授课bONa.课程号=b.课程号
JOIN教师cONc.教师号=b.教师号
WHERE所在部门=‘自动化学院'
国家开放大学2020年春季学期期末统一考试数据库应用技术试题2020年9月
三、综合应用题(本题共3个小题,共40分)
31.(本题10分)写出创建如下三张表的SQL语句。
“汽车”表结构:
汽车型号:
普通编码定长字符类型,长度为10,主键。
汽车名:
统一编码可变长字符类型,长度为20,非空。
颜色:
统一编码定长字符类型,长度为2,取值为:
“白色”、“红色”、“银灰”。
出厂价格:
整型,取值大于等于10000。
“生产厂家”表结构:
厂家编号:
普通编码定长字符类型,长度为20,主键。
厂家名:
统一编码可变长字符类型,长度为10,非空。
厂址:
统一编码可变长字符类型,长度为20.
联系电话:
普通编码定长字符类型,长度为8.
“销售”表结构:
汽车型号:
普通编码定长字符类型,长度为10,引用“汽车”表的外键。
厂家编号:
普通编码定长字符类型,长度为20,引用“生产厂家”的外键。
销售日期:
日期型,默认值为系统当前日期。
销售价格:
整型。
主键:
(汽车型号,厂家编号,销售日期)。
参考答案:
CREATETABLE汽车(
汽车型号char(10)primarykey,
汽车名nvarchar(20)notnull,
颜色nchar
(2)CHECK(颜色IN(白色,红色',银灰)),
出厂价格intcheck(出厂价格>=10000)
)
CREATETABLE生产厂家(
厂家编号char(20)primarykey,
厂家名nvarchar(10)notnull,
厂址nvarchar(20),
联系电话char(8)
)
CREATETABLE销售(
汽车型号char(10),
厂家编号char(20),
销售日期datedefaultgetdate(),
销售价格int,
Primarykey(汽车型号,厂家编号,销售日期),
Foreignkey(汽车型号)references汽车(汽车型号),
Foreignkey(厂家编号)references生产厂家(厂家编号)
)
32.依据第31题所创建的三张表,写出完成下列操作的SQL语句。
(本题共20分,每小题5分)
(1)查询出厂价格在20万到30万之间的全部汽车的详细信息.
(2)查询厂址为“长春”的汽车销售情况,列出汽车型号、销售日期和销售价格。
(3)将“银灰”色汽车的销售价格降低5%。
(4)在汽车表中插入一行数据,汽车型号:
W220,汽车名:
奔驰,颜色:
红色,出厂价格:
32万。
(1)SELECT*FROM汽车
WHERE出厂价格BETWEEN200000AND300000
(2)SELECT汽车型号,销售日期,销售价格
FROM销售aJOIN生产厂家bONa.厂家编号=b.厂家编号
WHERE厂址=’长春’
(3)UPDATE销售SET销售价格=销售价格*0.95
FROM销售aJOIN汽车bONa.汽车型号=b.汽车型号
WHERE颜色=银灰
(4)INSERTINTO汽车
VALUES(‘W220’,’奔驰’,’红色’,320000)
33.依据第31题所创建的三张表,写出创建满足如下要求的视图的SQL语句:
查询厂址为“北京”、汽车名为“伊兰特”的汽车销售情况,列出汽车型号、颜色、出厂价格、销售日期及销售价格。
(本题10分)
CREATEVIEWV1AS
SELECTa.汽车型号,颜色,出厂价格,销售日期,销售价格
FROM汽车aJOIN销售bONa.汽车型号=b.汽车型号
JOIN生产厂家cONc.厂家编号=b.厂家编号
WHERE厂址=’北京’AND汽车名=’伊兰特’
国家开放大学2019年秋季学期期末统一考试数据库应用技术试题2020年1月
三、综合应用题{本题共3个小题,共40分)
31.(本题10分)
写出创建如下三张数据表的SQL语句。
“汽车”表结构:
汽车型号:
普通编码定长字符类型,长度为20,主键。
汽车类别:
普通编码定长字符类型,长度为10,取值为:
“小轿车”、“商务车”、“SUV”
生产年份:
整型。
“经销商”表结构:
经销商号:
普通编码定长字符类型,长度为20,主键。
经销商名:
普通编码可变长字符类型,长度为30,非空。
地址:
普通编码可变长字符类型,长度为50。
“销售”表结构:
经销商号:
普通编码定长字符类型,长度为20,引用经销商表的外键。
汽车型号:
普通编码定长字符类型,长度为20,引用汽车表的外键。
销售时间:
日期时间型。
销售价格:
整型
主键:
(经销商号,汽车型号,销售时间)。
32.(本题共20分,每小题5分)
依据第1题所创建的三张表,写出完成下列操作的SQL语句。
(1)查询2014年生产的汽车型号和汽车类别。
(2)查询2013年卖出的销售价格30万元以上(包括30万元)的汽车的总数量。
(3)将销售价格超过100万元的汽车降价5万。
(4)在汽车表中插人一行数据:
汽车型号为“Q100”,汽车类别为“小轿车”,生产年份为2014。
33.(本题10分
依据第1题所创建的三张表,写出创建满足如下要求的视图的SQL语句:
查询销售“小轿车”的经销商的经销商名和地址。
三、综合应用题(本题共3个小题,共40分)
31.(本题10分)
参考答案及评分要点:
CREATETABLE汽车(
汽车型号
汽车类别
char(20)primarykey,
char(10)CHECK(汽车类别in('小轿车','商务车','SUV')),
生产年份
int
评分要点:
主键:
1分;CHECK:
2分,其他1分。
共计4分。
CREATETABLE经销商(
经销商号char(20)primarykey,
经销商名varchar(30)notnull,
地址varchar(50)
评分要点:
主键:
1分;其他:
1分。
共计2分。
CREATETABLE销售(
经销商号
char(20),
char(20),
汽车型号
销售时间
销售价格
datetime,
int,
Primarykey(经销商号,汽车型号,销售时间),
Foreignkey(经销商号)references经销商(经销商号),
Foreignkey(汽车型号)references汽车(汽车型号)
评分要点:
主键1分,外键2分,其他1分。
共计4分。
32.(本题共20分,每小题5分)
参考答案及评分要点:
(1)SELECT汽车型号,汽车类别
FROM汽车
WHERE生产年份=2014
评分要点:
SELECT部分2分,FROM部分1分,WHERE部分2分
(2)SELECTCOUNT(*)销售总数量
FROM销售
WHERE销售价格>=300000
AND销售时间BETWEEN'2013/1/1'AND'2013/12/31'
评分要点:
SELECT部分1分,FROM部分1分,WHERE部分3分
(3)UPDATE销售SET销售价格=销售价格一50000
WHERE销售价格>1000000
评分要点:
UPDATE部分3分,WHERE部分2分
(4)INSERTINTO汽车
VALUES('Q100','小轿车',2014)
评分要点:
NSERT部分2分,VALUES部分3分
33.(本题10分)
参考答案及评分要点:
CREATEVIEWVIAS
SELECT经销商名,地址
FROM经销商JOIN销售ON经销商.经销商号=销售.经销商号
JOIN汽车ON汽车.汽车型号=销售.汽车型号
WHERE汽车类别=‘小轿车'
评分要点:
每行2分
国家开放大学(中央广播电视大学)2018年秋季学期“开放本科”期末考试数据库应用技术试题2019年1月
三、综合应用题(本题共3个小题,共40分)
31.写出创建如下三张数据表的SQL语句。
(本题10分)
“汽车”表结构:
汽车型号:
普通编码定长字符类型,长度为20,主键。
汽车类别:
普通编码定长字符类型,长度为10,取值为:
“轿车”、跑车”、“SUV”
生产年份:
整型。
“经销商”表结构:
经销商号:
普通编码定长字符类型,长度为20,主键。
经销商名:
普通编码可变长字符类型,长度为30,非空。
地址:
普通编码可变长字符类型,长度为50。
“销售”表结构:
经销商号:
普通编码定长字符类型,长度为20,引用经销商表的外键。
汽车型号:
普通编码定长字符类型,长度为20,引用汽车表的外键。
销售时间:
日期时间型。
销售价格:
整型
主键:
(经销商号,汽车型号,销售时间)。
32.依据第31题所创建的三张表,写出完成下列操作的SQL语句。
(本题共20分,每小题5分)
(1)查询2015年生产的汽车型号和汽车类别。
(2)查询2016年卖出的销售价格30万元以上(包括30万元)的汽车的总数量。
(3)将销售价格超过100万元的汽车降价5万。
(4)在汽车表中插入-行数据:
汽车型号为“Z4”,汽车类别为“跑车”,生产年份为2014。
33.依据第31题所创建的三张表,写出创建满足如下要求的视图的SQL语句:
查询销售“SUV”的经销商的经销商名和地址。
(本题10分)
三、综合应用题(本题共3个小题,共40分)
31.(本题10分)
参考答案及评分要点:
CREATETABLE汽车(
汽车型号char(20)primarykey,
汽车类别char(10)CHECK(汽车类别in('轿车','跑车','SUV')),
生产年份int
评分要点:
主键:
1分;CHECK:
2分,其他1分。
共计4分。
CREATETABLE经销商(
经销商号char(20)primarykey,
经销商名varchar(30)notnull,
地址varchar(50)
评分要点:
主键:
1分;其他:
1分。
共计2分。
CREATETABLE销售(
经销商号
汽车型号
销售时间
char(20),
char(20),
datetime,
int,
销售价格
Primarykey(经销商号,汽车型号,销售时间),
Foreignkey(经销商号)references经销商(经销商号),
Foreignkey(汽车型号)references汽车(汽车型号)
评分要点:
主键1分,外键2分,其他1分。
共计4分。
32.(本题共20分,每小题5分)
参考答案及评分要点:
(1)SELECT汽车型号,汽车类别
FROM汽车
WHERE生产年份=2015
评分要点:
SELECT部分2分,FROM部分1分,WHERE部分2分
(2)SELECTCOUNT(*)销售总数量
FROM销售
WHERE销售价格>=300000
AND销售时间BETWEEN'2016/1/1'AND'2016/12/31'
评分要点:
SELECT部分1分,FROM部分1分,WHERE部分3分
(3)UPDATE销售SET销售价格=销售价格一50000
WHERE销售价格>1000000
评分要点:
UPDATE部分3分,WHERE部分2分
(4)INSERTINTO汽车
VALUES('Z4','跑车',2014)
评分要点:
INSERT部分2分,VALUES部分3分
33.(本题10分)
参考答案及评分要点:
CREATEVIEWVIAS
SELECT经销商名,地址
FROM经销商JOIN销售ON经销商.经销商号=销售.经销商号
JOIN汽车ON汽车.汽车型号=销售.汽车型号
WHERE汽车类别='SUV'
评分要点:
每行2分
国家开放大学(中央广播电视大学)2018年春季学期“开放本科”