考试范围:
1、 第一章、第二章、第三章、第四章、第六章、第七章、第十五章、第十六章、第十七章 2、 课件、作业、课堂练习以内的内容,除了特别注明“不要求”的以外,都要考查。课件、
作业、课堂练习以外的内容不考查。 3、 “熟记”部分,一定要熟记
4、 熟练“查询习题讲解”课件中出现的题型和解题方法。熟练下面蓝色部分的应用题型和
解题方法(对应章节的课件中有) 第一章
1、 四个概念:什么是数据? 什么是数据库? 什么是数据库管理系统(DBMS)?什么是
数据库系统(DBS)? 它们之间的联系。
? 数据:用于描述事物属性的符号,多数情况下,数据是以二进制形式存储在计算机内
? 数据库:一个相互联系的数据的集合 (数据库中数据的重要特点:是相互联系的。) ? 数据库管理系统:数据库管理系统包括(相互联系的数据集合 (数据库)、存取这些
数据的一套程序 (数据库管理系统软件) )
? 数据库系统:指以数据库为核心的整个计算机系统(数据库系统的组成 :数据库、
硬件、软件、人员)
2、 熟记数据库系统的组成。
数据库系统的组成 :数据库、硬件、软件、人员
3、 三级模式:物理模式(又称内模式),逻辑模式(又称模式),和子模式(又称外模式)
的含义是什么?一个数据库有几个物理模式,逻辑模式和子模式?
? 物理模式:整体数据库的存储结构,描述所有数据是如何在硬盘上存储的。比如,对于一条“雇员”记录,在硬盘的什么地方可以找到它的原始数据? ? 逻辑模式:整体数据库的逻辑结构,用于描述全部的数据结构和数据间联系。比如, “雇员”记录有多少个字段?其中哪一些字段是用来和 “公司”记录相联系的? ? 子模式:部分数据库的逻辑结构(特定用户能看到的那部分),用于描述这部分数据的结构和彼此间联系。比如,对于用户A来说,他可以看到或访问“雇员”记录
的哪些字段?
? 只有一个物理模式.
? 只有一个逻辑模式.
? 可以有很多个子模式 (面向不同用户)
4、 两种数据独立性:什么是逻辑数据独立性?什么是物理数据独立性?用户或者应用程序
面向的到底是哪一级数据库模式?
? 逻辑数据独立性 :当逻辑模式被修改时,应用程序不一定需要改变,因为子模式可能不会受到影响 。
? 物理数据独立性 :当物理模式被修改时,应用程序不必改变,因为逻辑模式和子
模式不会受到影响 。
? 在数据库系统中,应用程序被看作是一个用户,直接面向某个子模式(即: 看到的
是一个子模式,数据库的某一部分)
5、 理解模式与实例的对比
? 对于一个数据库,它的结构(模式)相对稳定,而内容(实例)则会随时间而变化。
6、 简单地说,DDL和DML分别有哪些作用?
? 数据定义语言(DDL):用于定义数据模式(结构)、访问方式、一致性约束等(例如,
某个表里有多少个字段,它们的字段名、类型、长度、是否为空等。) ? 数据操纵语言(DML):用于访问和操纵具体的数据内容。(例如对某个表的记录进行插入、删除、更新,以及查询) ? DDL
定义数据库的结构/模式 范例:一个表有那些字段 ? DML
操纵数据库的内容/实例 范例:一个表有那些记录
7、 过程和非过程语言的区别。特别地,我们在这门课程所提到的各种语言(SQL、关系演
算、关系代数),是属于过程还是非过程的?
? 过程化的:用户必须说明 ① what: 做什么? (对于DML: 什么数据) ② how: 怎么
做? (对于DML: 怎么找到这些数据)
? 非过程化的:用户只需说明 ① what: 做什么? (对于DML: 什么样的数据) ? SQL实际上同时提供了数据定义和数据操纵功能,它是DDL和DML的二合一,
并且是非过程化的。 ? 11
8、 常见的两类体系结构是什么?两层体系结构又称作什么?在两层体系结构中,两层分别
指什么,运行的是什么?三层结构中,三层又分别指什么,运行的又是什么?
? 这个时候的数据库系统,主要是两层或者三层的体系结构。
? 两层体系结构又称作 客户机/服务器结构(C/S结构)
? 在两层体系结构中,两层分别指 客户机、服务器,客户机:运行数据库应用程序,
服务器:运行数据库管理系统
? 三层体系结构称作 浏览器/服务器结构(B/S结构)
? 三层结构中,三层分别指 客户机、应用服务器、数据库服务器,客户机:运行浏
览器(例如IE) ,应用服务器:运行web系统(如BBS),数据库服务器:运行数据库管理系统服务 。
9、 理解DBA是对数据库进行集中控制和管理的最重要人员
数据库管理员的职责包括
a) 模式(逻辑结构)定义
例如:定义有哪些表,这些表有什么属性(字段)
b) 存储结构和存取方式的定义
例如:为表设计索引 c) 模式和物理组织的修改
例如:修改表的字段;修改索引
d) 授予用户访问数据库的权限
例如,为某个用户定义用户名和密码,并分配权限 e) 定义完整性性约束
例如,定义年龄字段的完整性约束:值>=0
f) 监视系统性能
例如:定期整理数据库,以减少“碎片”,提高性能
g) 对需求变化做出响应
第六章
1、 熟记数据库设计的四个阶段?在各个阶段分别要做什么工作? 2、 理解实体集、属性和联系集。对属性的域的理解。
3、 能够判定一个属性的类型:复合属性、多值属性、派生属性等。 4、 什么时候需要标注实体集的角色? 5、 什么是主码、候选码、超码?主码、候选码、超码的关系?主码、候选码、超码的个数? 6、 映射基数有哪几种?如何判定二元联系的映射基数?如何判定多元联系的映射基数? 7、 实体集转换成关系,注意多值属性的处理。联系集转换成关系或属性,什么时候转换成
属性,什么时候转换成关系。 8、 应用题型1:根据用户需求,画一个E-R图。(Step 1: 先画实体集,包括属性和主码。
Step 2:再画联系集,包括映射基数和角色) 9、 应用题型2:将一个E-R图转化为关系模型。(Step 1:实体集→关系,属性→属性。Step
2:联系集→属性/关系)
第二章
1、 什么是数据模型的三要素?什么是关系模型的三要素?
2、 理解域和笛卡儿积的概念。理解关系的数学定义。
3、 关系的组成:什么是属性?什么是元组?什么是分量?度和基数。 4、 关系有哪些性质?要熟记并能理解。
5、 关系有哪四种码?数量?什么是外部码?牢记外部码的属性名可以和对应主码不同。外
部码从E-R图的什么概念转化而来?
6、 关系模式和关系实例的对比。引起这两者变化的原因是什么(执行了哪些语句)。 7、 有几种表示关系查询的语言?这些语言是过程化还是非过程化的? 8、 掌握各种关系运算。其中最基本的运算(不可替代)是哪些? 9、 应用题型3:用关系代数表达查询问题
第三章
1、 熟记SQL有哪些特点?
2、 SQL对数据库三级模式的规定:每级模式由什么组成? 3、 熟记SQL的四种功能。这些功能分别由哪些语句实现? 4、 掌握SQL的各种数据定义语句
5、 掌握SQL的Select数据查询语句。包括Select子句的重命名和前缀,Where子句中出
现的各种新运算,子查询的不同类型等等。 6、 掌握SQL的各种数据修改语句。
7、 理解视图的本质和特点(命名的查询语句,虚拟关系和真正关系有相同也有不同;动态
变化)。熟记视图的优点。掌握定义视图的语句,了解视图的嵌套查询和嵌套定义。 8、 掌握在SQL中空值参与各种运算的规则?包括空值的判定和计算(各种计算中对空值的处理)。 9、 理解一般视图与物化视图之间的对比,物化试图的本质(将视图在某个时刻的内容保存起来,有真正的存储数据)。 10、 应用题型4:用SQL表达查询问题
第四章——完整性与安全性
1、 熟记关系模型中的三类完整性规则。各有什么要求? 2、 理解哪些(修改)操作会破坏这些规则?
3、 掌握用SQL定义主码约束、外部码约束、非空约束、域约束、检查约束的语句?以及
这些约束的含义、作用。 4、 在定义外部码约束时,有哪几种参照动作?意义? 5、 断言和触发器(不作要求)
6、 安全性控制与完整性控制有何不同?理解某种现象到底属于其中哪一者。 7、 掌握用SQL授予权限和回收权限的语句。with grant option子句的作用。
第七章
1、 熟记不良关系可能会有的四种问题?能够结合例子加以说明。
2、 有哪些特殊类型的函数依赖?它们有什么相互关系?能够根据定义去判定它们。 3、 用函数依赖判断一个属性集是否超码,或者是否候选码的方法 4、 掌握属性集闭包的计算。并能够以此判定一个函数依赖是否成立。 5、 理解与掌握1NF、2NF、3NF、BCNF。并能够进行判定。 6、 掌握规范化到1NF,3NF,BCNF的相关方法。 7、 应用题型4:给出关系和函数依赖
a) 判断某个属性是否候选码? b) 判断某个函数依赖是否成立?
c) 判断关系所属的最高范式,并给出证明。 d) 将关系规范化到3NF,或者BCNF e) 证明某一种分解方案是无损的
第十五章
1、 深刻理解事务概念。SQL对事务的规定:两种结束方式(提交或回滚的含义)。判断一
个语句属于什么事务。 2、 熟记事务的ACID性质?(包括英文单词、确切含义、保障机制)
3、 事务从开始到结束,可能经历哪些状态,哪些是结束状态?每种状态的进入条件和工作是什么?
4、 理解有哪两种类型的事务调度。
5、 并发调度有什么问题?原因?解决方法?
6、 熟记有哪三类数据不一致性?能够举例说明是如何发生的?
第十六章
1、 并发控制的任务是什么? 2、 锁的两种类型?相容关系?
3、 有哪几种封锁协议?规则是什么?可分别解决哪些数据不一致性问题?它们之间有什
么关系(比如符合一种协议是否就符合另外一种?) 4、 SQL中的隔离性级别(不作要求)
第十七章
1、熟记有哪三种类型的故障?故障的起因,影响范围,错误类型和恢复方法? 2、理解数据转储。有哪些类型的数据转储?理解它们的对比。
3、日记文件的内容?记录的种类,记录的格式?先写日志文件的原则?
4、检查点。写入缓冲所有修改过的数据到磁盘,检查点前已提交的事务不处理。