《数据库原理与应用》期末复习一、课程主要内容第一章数据库系统概述要点:本章主要是建立下列概念1.DBMS和DBS的概念。
2.数据处理技术的4个发展阶段。
3.数据库系统的特点——数据冗余低、独立性高、共享性高。
4.数据库系统的模式结构:三级模式、二级映射。
如何保证数据与程序的物理和逻辑独立性?5.DBMS的功能:数据的定义、数据的操纵、数据库运行管理(安全性控制、数据的完整性控制、并发控制和数据库的恢复)6.实体之间的三种联系方式。
7.数据模型的分类:概念模型、数据模型、物理模型8、.数据模型的三要素(数据结构、数据操作、数据的完整性约束)9.常用的概念模型是E-R模型。
10.三大传统数据模型是什么?(用表格形式来表示实体与实体之间联系的模型是关系模型。
)11.关系型数据库是通过公共属性实现联系。
第二章关系数据库要点:1.主要术语:关系、元组(行)、属性(列)、主键、外键2.关系完整性约束(实体完整性、参照完整性、用户自定义完整性)。
3.关系代数的运算:交、差、并、积、选择、投影、连接第三章关系数据库理论——关系模式的规范化要点:1.关系模型优化的工具——关系的规范化。
2.会分析关系的依赖情况,判断关系所属范式并能用规范化理论将关系规范到3NF。
(课堂举例和作业)第四章数据库设计要点:1.数据库设计的三个主要阶段:概念设计(E-R模型)、逻辑设计(建立数据模型)、物理设计(确定数据库表结构,选择合理的存储结构和存取方法)2.掌握建立E-R模型的方法,会用来解决具体问题(例题、作业、课堂思考题)3.掌握逻辑设计方法(即掌握将E-R模型转换成关系数据库的一般规则)能用于解决具体应用问题。
4.对一个具体应用,会进行数据库设计(画出E-R图、转换为关系数据模型、指出主键,分析每个范式的规范化级别)第五章关系数据库标准语言——SQL要点:1.SQL Server 的基本知识:微软公司大型分布式关系型数据库,SQL Server的运行环境——是用于客户机/服务器结构的大型网络数据库。
可与多种DBMS交换数据(实现导入和导出),生成的主数据库文件扩展名为.mdf ,次数据库文件扩展名为.ndf,对应的日志文件扩展名为ldf 。
2.SQL Server使用的关系数据库语言:Transact-SQL3.SQL的功能:数据定义、数据查询、数据操纵、数据控制功能。
4.SQL是一种高度非过程化的语言5.熟悉SQL Server的主要管理工具,了解SQL Server的4个系统数据库和2个实例数据库。
6.会数据库的创建,特别是create database语句的使用。
7.掌握CREATE TABLE建表和各种约束的书写2.索引的概念、索引的作用及类型(聚集索引与非聚集索引),会写CREATE INDEX 语句3.查询和视图的概念,掌握视图与表的区别,会创建视图,重点是用select命令进行单表、多表、统计查询,能理解(读懂复杂子查询)。
4.掌握(会写)insert、delete、update语句5.了解grant、revoke的功能。
第六章数据库安全保护要点:1.掌握安全性控制的一般方法,如何通过定义视图和存取控制保证数据库的安全性?2、SQL Server2000的数据安全性机制:对用户的访问进行两个阶段的检验(身份验证、权限许可),两种身份验证模式;3、完整性控制涉及的两个对象:rule、default3、并发控制:掌握事务的4个特征,数据库的并发操作导致的数据库不一致性有哪三种?实现并发控制的主要方法封锁(加锁)练习题一、单选题1.单个用户使用的数据视图的描述称为A。
A. 外模式B. 概念模式C. 内模式D. 存储模式2.子模式DDL用来描述B。
A. 数据库的总体逻辑结构B. 数据库的局部逻辑结构C. 数据库的物理存储结构D. 数据库的概念结构3.下列聚合函数中不忽略空值(null) 的是C。
A. SUM (列名)B. MAX (列名)C. COUNT ( * )D. AVG (列名)4.反映现实世界中实体及实体间联系的信息模型是D。
A.关系模型B.层次模型C.网状模型D. E-R模型5.对数据库并发操作有可能带来的问题包括A。
A.读出“脏数据”B.带来数据的冗余C.未被授权的用户非法存取数据D.破坏数据独立性6.关系数据模型的三个组成部分中,不包括D。
A.完整性规则B.数据结构C.数据操作D.并发控制7.SQL语言的REVOKE语句实现下列哪一种数据控制功能?C。
A.可靠性控制B.并发性控制C.安全性控制D.完整性控制8.事务有多个性质,其中不包括B。
A.一致性B.唯一性C.原子性D.隔离性9.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。
在这几个阶段中,数据独立性最高的是A阶段。
A.数据库系统B.文件系统C.人工管理D.数据项管理10.对关系模型叙述错误的是D。
A.建立在严格的数学理论、集合论和谓词演算公式的基础之上B.微机DBMS绝大部分采取关系数据模型C.用二维表表示关系模型是其一大特点D.不具有连接操作的DBMS也可以是关系数据库系统11.并发操作有可能引起下述D问题。
I.丢失更新II.不可重复读III.读脏数据A.仅I和IIB.仅I和IIIC.仅II和IIID.都是12.下面对Drop权限的叙述中,正确的是B。
A.只允许删除数据B.允许删除关系C.允许删除数据库模式D.和Delete权限等价13.A是由于关系模式设计不当所引起的问题。
A.数据冗余B.数据被非法读取C.数据被非法修改D.发生死锁14.消除了部分函数依赖的1NF的关系模式,必定是B。
A.1NF B.2NF C.3NF D.4NF15.设关系R 和S 的属性个数分别为r 和s,则(R×S)操作结果的属性个数为A 。
A、r+sB、r-sC、r×sD、max(r,s)16.在数据库设计中,将E-R图转换成关系数据模型的过程属于B。
A. 需求分析阶段B. 逻辑设计阶段C. 概念设计阶段D. 物理设计阶段17.SQL中,下列涉及空值的操作,不正确的是C 。
A. AGE IS NULLB. AGE IS NOT NULLC. AGE = NULLD. NOT (AGE IS NULL)18.要求关系的元组在组成主键的属性上不能为空值,这是B 。
A.参照完整性规则B.实体完整性规则C .用户定义完整性规则 D.域完整性规则19.SQL 中的视图提高了数据库系统的D 。
A、完整性B、并发控制C、隔离性D、安全性二、填空题1.按照索引记录的存放位置,索引可分为聚集索引和非聚集索引。
2.进行并发控制的主要技术是封锁技术。
3.关系中的元组和属性分别对应二维表中行的和列。
4.一个学生可以同时借阅多本图书,一本图书只能由一个学生借阅,学生和图书之间为一对多的联系。
5.关系代数是关系操纵语言的一种传统表示方式,它以集合代数为基础,它的运算对象和运算结果均为关系6.如果某事务成功完成执行,则该事务称为已提交事务。
7.在数据库管理系统中,DBMS提供的SQL语言的语句可以嵌入到某一高级语言中,该语言称为宿主语言。
8..SQL视图是一个虚表,它是从一个或多个基本表中导出的表。
在数据库中只存放那个视图的定义,不存放视图的对应数据。
9.关系模式的三类完整性约束条件分别是完整性约束、参照完整性约束和用户自定义完整性。
10.在SQL语言中,修改数据表结构应使用的命令是Alter table。
11.根据SQL Server 2000的安全性要求,当某用户要访问SQL Server 2000中的数据库时,必须在SQL Server 2000上创建登录账户和用户账户。
12.设有关系数据表:职工工资(职工号,工资),现要将工资加薪10%的操作的T-SQL语句是:update职工工资set 工资=工资*1.1。
三、应用题1.设有商店和顾客两个实体,“商店”有属性商店编号、商店名、地址、电话,“顾客”有属性顾客编号、姓名、地址、年龄、性别。
假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和日期,而且规定每个顾客在每个商店里每天最多消费一次。
试画出E-R图,并注明属性和联系类型。
2.工厂(厂名和厂长名)需要管理以下信息:厂内有多个车间,每个车间有车间号、车间主任名、电话;一个车间内有多名工人,每个工人有职工号、姓名、年龄、性别、工种;一个车间生产多种产品,产品有产品号、产品名;一个车间生产多种零件,一种零件可由多个车间制造,零件有零件号、重量、材料。
一个产品由多个零件组成,一种零件也可能装配在多种产品上。
(1).根据上述说明画出E-R图;(2)将E-R模型转换成关系数据模型,并指出每个关系的主键和外键。
(3).分析每个关系的范式级别。
3.设有如下商品库存关系R:商品编号商品名称采购批次单价库存数量仓库号仓库地点A1 ABC彩电 1 2260 5 S1 中山路5号A1 ABC彩电 2 2200 4 S1 中山路5号A2 XYZ冰箱 2 1050 6 S1 中山路5号A3 PPP西装 1 980 8 S2 胜利路8号A4 FK自行车 2 450 5 S3 胜利路8号请仅在R中已给出数据的范围内分析其函数依赖关系并解答如下问题:1、此关系R 为第几范式?为什么?2、将它分解为满足3NF范式的关系模式。
4.设有关系数据库:职工关系EMPLOYEE (职工号,职工名,街道,城市) 工作关系WORKS (职工号,公司号,工资) 公司关系COMPANY (公司号,公司名,城市)。
试用T-SQL语句写出将所有在“联华公司”工作的职工加薪5﹪的操作。
5.请用T-SQL语句建立如下课程表。
课程号课程名学分A0074 大学英语(1) 4A0095 邓小平理论概论 2A0184 高等数学(1) 5A1135 计算机文化基础 4(1)要求定义课程表关系,它包括三个属性:课程号、课程名和课程学分。
其中课程号为主码。
课程学分带有检查约束,只取1至5之间的整数,可以取空值。
(2)在课程表插入一个的元组数据。
(第一条记录的内容)(3)查找学生表中电子工程系的学生的姓名、系名和出生年月,结果按出生年月降序排列,年龄即从小到大排序。
(4)查找姓名以“李”打头的所有学生名。
6.说明下面T-SQL语句完成的功能:CREATE UNIQUE CLUSTERED INDEX number_indON employees (number)SQL练习已知教学数据库有中含有四个基本表教师情况表T(Tno,Tname,Tdept)学生情况基本表S(Sno,Sname,Sage,Ssex)课程基本表C(Cno,Cname,Tno)选课情况基本表SC(Sno,Cno,Grade)试用SQL语句完成如下查询(1)查询未选修“高等数学”的学生的学号和姓名(2)查询选修了洪文老师所讲授课程的学生的学号和成绩(3)查询男、女同学各有多少人(4)查询至少选修了两门课程的学生学号(5)查询学号比“陆伟”同学大而年龄比他小的学生姓名(6)向基本表T中插入一个教师元组(‘412’,‘李红’,‘外语’)(7)将“英语“课程的任课教师号修改为“412”(8)将所有学生的年龄增加1岁(9)将“高等数学”课程不及格的成绩修改为0分(10)将低于总平均分成绩的女同学的成绩提高5%(11)将“陆伟”同学的信息分别从基本表SC和S中删除(使用两个DELETE语句)(12)创建视图V_MAX_MIN(Cno,MAX,MIN),反映所有课程的课程号(Cno),最高成绩(MAX)和最低成绩MIN(13)创建视图V_FAIL(Sname,Cname,Grade),反映成绩不及格的学生名(Sname),课程名(Cname)和成绩(Grade)习题及练习题答案第3章作业:1.P176页19题答案:有传递依赖,属于1NF,规范化到3NF:职工(职工号,职工名,年龄,性别,单位号)单位(单位号,单位名)2.订单(订单号,订货日期,客户编号,客户名,商品编码,商品名称,产地,数量)(1).属于第几范式?(2).分析其函数依赖关系,将其规范化到第三范式。