第 1 页:模拟试题 |
第 6 页:参考答案与解析 |
三、设计与应用题(共30分)
1.已知某教务管理系统的设计人员在需求分析阶段收集到下列原始数据表格:
教师
教师号 |
教师名 |
职称 |
工资 |
上级领导教师号 |
9868 |
王文华 |
教授 |
8000 |
null |
9983 |
李一斌 |
副教授 |
6000 |
9868 |
9985 |
丁一 |
讲师 |
删 |
9868 |
0783 |
王润泽 |
讲师 |
删 |
9868 |
0899 |
欧阳丹妮 |
讲师 |
删 |
9868 |
课程
课程号 |
课程名 |
学分 |
教材号 |
教材名 |
出版社名 |
任课教师号 |
C2006 |
计算机原理 |
3 |
11 |
计算机原理 |
清华大学出版社 |
9868 |
C2006 |
计算机原理 |
3 |
12 |
计算机原理与应用 |
高等教育出版社 |
9868 |
C2004 |
数据结构 |
3 |
13 |
数据结构 |
清华大学出版社 |
9868 |
C2010 |
数据库原理 |
13 |
14 |
数据库原理 |
清华大学出版社 |
9868 |
C2010 |
数据库原理 |
3 |
15 |
数据库原理与技术 |
高等教育出版社 |
9868 |
S3001 |
音乐欣赏 |
2 |
16 |
音乐欣赏 |
清华大学出版社 |
9983 |
已知该业务系统存在如下规则:
Ⅰ.每个教师有唯一的教师号,每个教师号对应唯一的一名教师;
Ⅱ.每门课程有唯一的课程号,每个课程号对应唯一的一门课程;
Ⅲ.每本教材有唯一的教材号,每个教材号对应唯一的一本教材;
Ⅳ.每个教师最多只有一个上级领导,也可以没有上级领导;
V.一门课程仅由一名教师讲授;
Ⅵ.一本教材仅用于一门课程。(12分)
(1)请根据原始数据表及业务规则,给出该系统的关系模式,保证每个关系模式满足3NF,并说明每个关系模式的主码和外码。
(2)画出该系统的ER图,ER图中需给出每个实体集的属性,主码属性用下划线标识。
2.在SQL Server 2008中,设某数据库中有商品表(商品号,商品名,进货价格),商品号为主码;销售表(商品号,销售时间,销售数量,销售价格,本次利润),商品号和销售时间为主码,销售价格为本次销售商品的单价。现要求每当在销售表中插入前4列数据时(假设一次只插入一行数据),系统自动计算本次销售产生的利润,并将该利润赋给销售表的第5列“本次利润”。请编写实现上述功能的后触发型触发器代码。(10分)
3.在进行某学校教务管理系统的数据库设计时,数据库设计人员设计了如下几个关系模式:
系(系号,系名),系号为主码
学生(学号,姓名,所在系号),学号为主码
课程(课程号,课程名,开课系号),课程号为主码
选课(学号,课程号,选课时间),学号和课程号为主码
开发人员在将关系模式实施到SQL Server 2008的“教务”数据库时,使用了如下表结构定义语句:
CREATE TABLE系(
系号varchar(10)NOT NULL,
系名varchar(100)
)
CREATE TABLE学生(
学号varchar(50)NOT NULL,
姓名varchar(50),
所在系号varchar(10)
)
CREATE TABLE课程(
课程号varchar(50)NOT NULL,
课程名varchar(100),
开课系号varchar(10)
)
CREATE TABLE选课(
学号varchar(50)NOT NULL,
课程号varchar(50)NOT NULL,
选课时间datetime
)
在执行如下查询语句时发现执行效率很低:
SELECT *FROM选课JOIN学生0N学生.学号=选课.学号
JOIN系ON系.系号=学生.所在系号
JOIN课程0N课程.课程号=选课.课程号
WHERE系.系号=ˊ012 ˊ
AND convert(vvarchar(10),选课时间,120)>=ˊ2010-01-01ˊ
(1)在查找原因时发现建表语句有问题。请指出问题并说明该问题是否会影响此查询语句的执行效率。(4分)
(2)设已在“选课”表的“选课时间”列及“学生”表的“所在系号”列上建立了索引。请问这两个索引是否能够提高该查询语句的执行效率?如果不能,请说明原因。(4分)
相关推荐:
2015年全国计算机等级考试无纸化考试系统操作指南北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |