无锡职业技术学院
理结构设计、数据库实施与数据库运行与维护6个阶段。
9.需求分析调查的重点是调查、收集、分析用户在数据管理中的信息要求、处理要求、__________________________________要求。
10.为了提高数据库的查询速度,引入了索引机制。SQL Server 2000中提供了以下几种索引:__________________、非聚簇索引、惟一性索引。
11.数据库中存放着各类数据库对象包括_________、表、视图、存储过程、触发器、规
2008~2009学年第2学期《数据库原理与应用(A)》期末试卷(A卷)
(闭卷考试)
系 班级 学号 姓名
题 目 得 分 本题 得分 一 二 三 总得分 则、用户、角色等,所有数据库对象都存放在数据库中。
12.关系中一般存在_______________、插入异常、删除异常与更新异常四个问题。 13.函数依赖可分为完全依赖、部分依赖和____________________三类。
一、填空题(每小题1分,共20分)
14.在SQL Server中有两种角色,即服务器角色和_______________。服务器角色是赋予登录帐号对服务器的访问权限。
15.SQL Server的权限分为______________(用户对表、视图、存储过程等的操作权限)、语句权限(执行数据定义语句的权限)、隐含权限(系统预定义的服务器角色、数据库拥有者、数据库对象所拥有的权限)。
16.视图之所以称为虚表,是因为____________________________________。
17.SQL语言中的用户自定义函数有数值型函数、内联表值型函数和多语句表值型函数。数值型函数只能返回一个数值型函数值,而内联表值型函数与多语句表值型函数只能返回_________________,所以在Select语句的From子句可以调用这后两个函数。
18.事务是一个操作序列,序列中每个操作单元(不可再分),要么都执行,要么___________。事务用Begin Transaction语句开始,用Commit语句提交,用Rollback语句回滚。
19.触发器是一种特殊的存储过程,向表里插入、更改或删除记录时被自动激活。SQL Server为触发器创建Inserted与Deleted表。Deleted表存放由于执行Delete或Update语句而要从表中删除的所有行。Inserted表存放由于执行________________语句而向表中插入的所有行。
20.数据库应用系统的体系结构可分为集中式结构、文件服务器结构、____________________、浏览器/Web应用服务器/数据库服务器体系结构(B/S结构)。
1.数据库系统是由数据库DB、数据库管理系统DBMS、支持数据库运行的软硬件环境、数据库应用程序、______________________、用户等组成。
2.DBMS为数据库系统的核心,其功能为数据定义(用DDL定义库、表、视图、索引等)、______________________(用DML进行查询、删除、插入与修改操作)、数据管理(保证数据的安全性、一致性、完整性,控制数据并发操作与恢复)、数据维护(数据的输入、转换、转储、监视、分析等)、数据字典DD(管理三级体系结构的定义)。
3.SQL Server 2000共有服务管理器、__________________、查询分析器、导入和导出数据、服务器端与客户端网络实用工具、多种网页的发布和管理7个组件。
4.信息领域的三个世界是现实世界、概念世界和数据世界。概念数据模型实现系统从现实世界到概念世界的转换,常用的概念数据模型是_________________。
5.关系模型是由数据结构、____________________和完整性约束三部分组成。 6.关系模型的完整性数据约束条件分为三类,即实体完整性约束、参照完整性约束和__________________________。
7.实体完整性约束要求每个关系都有一个主键,且主键对应的属性都不能取空值。参照完整性规则定义了外键与主键之间的引用规则。外键只能取_______________。
8.一个完整的数据库设计过程分为需求分析、概念结构设计、__________________、物
第 1 页 共 3 页
出卷人 ;出卷日期________________ ;审核人 ;审核日期 ; 考试班级______________________ ;考试人数______________;考试日期 ;
1.简述数据库系统的三级模式与两级映射结构,以及三级模式与两级映射结构优点。
2.简述C/S结构体系和B/S结构体系的区别,它们分别适用于什么场合?
图1 V_Score视图输出实例
本题 得分 二、简答题(每题5分,共20分) 列名不能用别名,以便后面的题目能正确使用该视图)。
5、 图2是“计算机3001”班和“计算机3011”班学生的“数据结构”课程成绩,从高分到低分排列。写出
对应的SQL语句。(注意:图中另一个班的数据在下方,没有显示出来)。提示:可使用第4小题中创建的视图V_Score。要求列名按图所示使用别名。
3. 现有一个备份方案是:每周日凌晨2点做一次全库备份,每日凌晨3点作一次差异备份,
每小时做一次事务日志备份。现于周四上午9:20出现系统故障,请问(1)为最大限度地恢复数据,数据还原方案是什么?(2)能够恢复到什么时刻的数据。
图2 学生成绩情况表
4.设学生收费关系R为:
R(No,Year,Item ,Name,Class,Dept,Money)
其中,主键X=(No、Year、Item),分别表示学号、学年、收费项目、姓名、班级、系部、收费金额。
试分析关系R的范式级别,要求画关系R的函数依赖关系图。若关系R的范式级别小于或等于3NF,则对关系R进行规范化处理,使分解后关系能满足3NF要求。
本题 得分
6、 图3是各门课程的平均成绩,最高成绩和最低成绩的统计表。写出对应的SQL语句。要求列名按图所示
使用别名。
图3 各门成绩统计表
三、程序题(每小题6分,共10小题,60分)
7、 编写一条SQL语句,查询课程编号为“30001”的课程中,成绩大于该课程平均成绩的学生成绩(结果
如图4所示)。要求列名按图所示使用别名。
1、 创建库:写一条创建学藉管理系统数据库StudentSys的SQL语句。要求是数据文件初始大小30M,数据
文件增长比例10%,数据文件存放于D:\\StudentData目录下。日志文件初始大小20M,日志文件增长比例为5%,日志文件存放在F:\\StudentData目录下。
2、 创建表:通过SQL语句创建成绩表tblScore(含主键约束和外键约束等所有约束,假设其它的表均已被
创建)。
3、 插入和修改数据:根据如图2的数据,(1)为tblSocre表写出插入学生“刘琴”成绩的语句(假设原来没
有这条记录)。 (2)修改学生“开洁宇”的“数据结构”成绩为86分。写出对应的SQL语句。其中图中没有显示的字段不必考虑。学生学号与课程编号数据可从图2中获得。
4、 创建一个视图V_Score,用于显示成绩表中的所有字段,以及course_name, stud_name, class_name(注:
图4 学生最好成绩统计表
8、 编写一个存储过程UpdateScore,根据提供的学生学号、课程编号和成绩三个参数,修改学生的成绩。并
写一个调用该存储过程的SQL语句,将学生“孔明辉”的“数据结构”成绩改为92分(有关数据见图2)。学生学号与课程编号数据可从图2中获得。
9、 编写一个存储过程GetScore,查询指定课程(根据课程名称)的每位学生成绩,如果不提供课程名称,
则查询每位学生成绩最高的那门课的成绩,按学生学号排序。
分别用两种方法执行存储过程,方法一是提供“数据结构”课程名称,方法二是无课程名称,执行结果
第 2 页 共 3 页
出卷人 ;出卷日期________________ ;审核人 ;审核日期 ; 考试班级______________________ ;考试人数______________;考试日期 ;
参见图3。提示:可使用第4小题中创建的视图V_Score。要求列名按图所示使用别名。
图5
10、 为tblScore表建立一个更新触发器,当修改该表的数据时,检查tblStudent表中学生的毕业标志,如果是
1(毕业生),则不能修改,并显示出错信息:“此学生已经毕业,不能修改其成绩。”。并说明该触发器何时执行。
第 3 页 共 3 页
出卷人 ;出卷日期________________ ;审核人 ;审核日期 ; 考试班级______________________ ;考试人数______________;考试日期 ;