| 课程代码:21050
适用专业:计算机应用、计算机网络
串讲教师:北京林业大学吴保国
整体要点:
一、数据库的基本概念、原理(第1、2章)二、数据库设计(10~15分):
数据库设计理论(第4章):函数依赖,范式理论
数据库设计步骤与方法(第5章):概念设计、逻辑设计三、数据库安全保护(第6、1章,15分左右)
安全性控制、完整性控制、并发性控制、数据恢复
各种控制的目的、意义
各种控制采取的措施、如何实现的四、数据操作
关系代数(第2章):用数学语言给出操作的算法
SQL语言(第3章,30~40分):
数据定义(定义表结构、修改表结构)
数据查询(语句填空)
数据更新五、具体上机操作(第7、8章)
VFP的SQL语言
DBMS的操作Access、SQL Server六、数据库的发展与应用(第9章):了解发展及应用
第一章数据库系统概述
一、概念(了解)
信息、数据、数据处理、数据管理二、数据管理技术发展的三个阶段
人工管理阶段、文件系统阶段、数据库系统阶段
了解每个阶段的特点,尤其是数据库系统阶段的特点三、数据库系统的组成:
硬件
软件(OS、DBMS、各种开发工具、高级语言编译程序)
DB
人员(终端用户、应用程序员、数据库管理员)四、数据库管理系统(DBMS)
1.三层结构
外层—外模式 对应数据库中的视图
概念层—概念模式对应数据库中的基本表
内层—内模式 对应数据库中的文件
2.三层结构的目的及意义
数据独立性:逻辑独立性+物理独立性
3.三层结构的实现:二级映象:
外模式到概念模式的映象,保证数据的逻辑独立性
概念模式到内模式的映象,保证数据的物理独立性五、数据模型
概念模型:用于在计算机世界中对现实世界事物及事物之间联系的建模
格式化模型:
第1代:层次模型、网状模型
第2代:关系模型
第2.5代:对象-关系模型
第3代:面向对象数据模型
数据模型的三要素:数据结构、数据操作、数据完整性约束。
对概念模型的常用描述方法:实体联系模型(E-R模型)采用的是E-R图。
六、名词解释
1.信息:是经过处理和加工提炼而用于决策或其他应用活动的数据。
2.数据:是描述现实世界的各种信息的符号记录,是信息的载体,是信息的具体表现形式,其具体的表现有数字、文字、图形、图像、声音等。
3.数据处理:利用计算机对大量的各种形式的原始数据进行处理,从中抽取出有价值的信息,以作为行为和决策的依据。
4.数据管理:是指在数据处理的一系列活动中,将数据收集、存储、分类、传输等基本操作环节。
5.模式:模式是数据库中全体数据的逻辑结构和特征的描述,它仅涉及到对数据类型的描述,不涉及到具体的数值。
6.视图:视图是数据库中的虚拟表,由一个或几个基本表导出,用于让用户变换角度来操作基本表。数据库中只保存视图的定义,视图中不存放对应的数据。
7.数据库系统(p10题5)、数据库管理系统(p10题5)、关系模型、数据字典(《习题解析》p11题12)、物理独立性、逻辑独立性、实体、实体集、属性、联系、实体模型七、问答题
1.数据库系统相当于文件系统技术主要有哪些优点?《习题解析》p8题3
2.试画出整个数据库系统的层次结构图。《习题解析》p9题4
3.简述数据库三级结构的区别与联系,说明三级结构给数据库系统带来的好处。《习题解析》p11
第二章关系数据模型
一、关系由关系模式描述,多个关系模式构成关系数据库模式二、关系包括:
关系的头(结构),由关系模式描述(采用DDL语言),如R(A1,A2,A3)
关系的体(记录)三、关系代数
传统的集合运算:并、差、交、广义笛卡儿积
专门的关系运算:选取、投影、连接(等值连接、自然连接)、除法四、例子:
《习题解析》p185六1(1):用关系代数表示,用SQL语言表示
?student.学号,姓名,课程号,成绩(student*?系号=’06’(sc))
SELECT student.学号,姓名,课程号,成绩FROM student,sc
WHERE student.学号=sc.学号AND系号=’06’五、名词
同类关系、关系键、主键、外部键、关系模式、选取、投影、连接六、问答题
1.试述关系的性质。为什么只限用规范化关系?《习题解析》p25题2
2.试述主键和外部键的完整性约束条件,并说明原因。(简述实体完整性、参照完整性的目的、意义,并举例说明。)《习题解析》p25题3
第三章SQL语言(重点)
一、数据定义(p56)
1.表结构定义:CREATE TABLE student(sno C(8),sname C(10),birthday D,age I,merried L)
2.表结构修改:
增加字段:ALTER TABLE student ADD COLUMN telphone C(20)
修改字段类型:ALTER TABLE student ALTER COLUMN name c(20)
3.创建视图:CREATE VIEW s_view AS SELECT student.sno,sname,cname,grade FROM student,sc,course
WHERE student.sno=sc.sno AND sc.cno=course.cno二、数据操纵(p70)
1.数据插入:INSERT INTO student(sno,sname,sex,age) VALUES(‘S01’,’张三’,’男’,20)
2.数据删除:DELETE FROM student WHERE sex=’男’
3.数据修改:UPDATE student SET age=21 WHERE sno=’S01’三、权限与角色
授予GRANT,收回REVOKE四、查询
连表、选取、投影
集函数:MIN、MAX、AVG、SUM、COUNT
分组GROUP BY 分组条件HAVING
子查询:普通子查询、相关子查询五、例子
1.查询成绩在85分以上的学生的学号和姓名
SELECT学号,姓名FROM student WHERE学号NOT IN(SELECT学号FROM sc WHERE成绩<85)
2.查询成绩最高的学生
SELECT * FROM student WHERE成绩>=ALL(SELECT成绩FROM sc)
或SELECT * FROM student WHERE成绩=ALL(SELECT MAX(成绩) FROM sc)
3.查询同时向工程号为J1和J2的工程提供零件的供应商号
SELECT DISTINCT供应商号FROM SPJ
WHERE工程号=’J1’AND供应商号IN
(SELECT供应商号FROM SPJ WHERE工程号=’J2’)
4.检索至少选修了学号是S3的学生选修的全部课程相同的学生学号和姓名
SELECT学号,姓名FROM student
WHERE NOT EXISTS
(SELECT * FROM sc scx
WHERE scx.学号=’S3’AND NOT EXISTS
(SELECT * FROM sc scy
WHERE scy.学号=student.学号AND scy.课程号=scx.课程号))六、概念
关系数据库中的视图、索引、权限七、问答题
1.以VFP DBMS为例,给出SQL语言支持的关系数据库三级逻辑结构。《习题解析》p45题1
2.简述SQL语言的主要特点。《习题解析》p46题2
第四章数据库设计理论
一、不好的数据库会带来什么问题?
插入异常、删除异常、修改异常、冗余太大二、函数依赖:
完全函数依赖、部分函数依赖、传递函数依赖。定义、会具体分析三、规范化的定义:
规范化是将一个低一级范式的关系模式通过投影运算转化为若干个高一级范式的关系模式的集合的过程四、各级范式:
1NF、2NF、3NF、BCNF,各级范式达到的要求,各存在什么问题五、规范化的目的:
消除关系模式中不好的函数依赖,消除关系模式中存在的插入、删除、修改异常和数据冗余等弊病。
六、规范化的方法:
取原始关系的投影,消去决定因素不是候选键的函数依赖。
七、规范化的要求:
分解既要保持函数依赖,又要具有无损连接性。
八、概念
规范化、函数依赖、全键、主属性、范式九、问答题
1.什么是关系模式分解?为什么要进行关系模式分解?关系模式分解要遵循什么准则?《习题解析》p69题4
2.全键的关系是否必然属于3NF?是否也必然属于BCNF?说明原因。《习题解析》p73题9
第五章数据库设计步骤和方法
一、数据库设计分为:概念设计和逻辑设计二、近年来文凭考试考点:
1.设计E-R图
2.E-R图转关系
3.给出一个实际表格,将其转成关系
4.给出关系模式,进行规范化三、例子
《习题解析》p162五2(1):设计BCNF的关系数据库
《习题解析》p178五2:设计BCNF的关系数据库
《习题解析》p178五1:设计BCNF的关系模式
《习题解析》p184五1:指出关系模式以及主键
《习题解析》p188五2:将E-R图转成关系模式四、问答题
1.试述概念模式设计的重要性和设计步骤。《习题解析》p84题6
2.试述把E-R图转换为关系模式的转换原则。《习题解析》p84题8
第六章数据库安全保护
一、安全保护通过以下四个方面来实现:
1.安全性控制
访问控制:授权、用户标识(用户名、口令)
视图机制
数据加密
跟踪审查(审计日志)
2.完整性控制
实体完整性:定义,指定主键,避免重复记录
参照完整性:定义
用户定义完整性:
3.并发控制
为什么要实施并发控制?如不实施并发控制会导致:丢失更新、污读、不可重读
并发控制的机制:采用封锁技术(共享锁、独占锁)
封锁带来的问题:死锁
如何避免死锁:一次加锁法、顺序加锁法
4.数据库恢复
数据故障的原因:病毒故障、介质故障、系统故障、人为故障(破坏、操作故障)、事务故障
恢复的原理:利用冗余技术(备份文件+日志文件)二、概念
1.死锁:当两个或多个事务都在同时等待对方释放自己希望加锁的数据对象时,其中的每一个都等待对方释放封锁,就会出现死锁
2.事务:事务是用户定义的一组对数据库中的数据的操作序列,是操作数据库的最小逻辑单位,具有原子性、一致性、隔离性和持续性(永久性)的特点。
3.安全性、完整性、并发控制、数据恢复、丢失更新、污读、不可重复读、授权、访问控制、跟踪审查、封锁、排他式封锁、冗余三、问答题
1.数据库的安全性控制功能包括哪些常用手段?《习题解析》p96题2
2.数据库提供的安全性保护功能包括哪些方面?《习题解析》p96题1
4.并发操作的不一致性主要有哪些?《习题解析》p97题8
5.试述死锁发生的条件和消除死锁的常用方法。《习题解析》p98题10
6.数据库出现故障的种类有哪些?《习题解析》p177四2
第七、八章VFP DBMS
一、xBASE语言
数据操作语言(第7章)
传统的xBASE语言
SQL语言
程序设计语言(第8章)二、xBASE命令的语法格式
DISPLAY [<范围>] [FIELDS <字段名表>] [FOR ] [WHILE ]三、数据类型
字符型C 需指定宽度
数值型N 整体宽度=整数位宽度+小数位宽度+小数点的1位
整型I 4个字节
日期型D 8个字节
日期时间型T 8个字节
逻辑型L 1个字节
备注型M 4个字节
通用型G 4个字节四、数据定义
建库:CREATE DATABASE studentmanage
建表:(见SQL语言)
修改表结构:(见SQL语言)
表的打开:USE student
工作区:SELECT 2五、数据操作
APPEND FROM student
APPEND BLANK
BROWSE FIELDS sno,sname,age FOR age>17 NOAPPEND NOEDIT NODELETE
GO 5 GO TOP GO BOTTOM
SKIP SKIP -1 SKIP 2
LOCATE FOR age>17
REPLACE ALL工资WITH工资+1000 FOR职称=’副教授’
DELETE for性别=’男’
PACK
ZAP六、多表连接操作
SET RELATION TO 学号 INTO 学生表,课程号 INTO 课程表
UPDATE ON 商品号 FROM 新商品表 REPLACE 单价 WITH 新商品表.单价,金额 WITH 数量*单价
第九章数据库技术的发展与展望
1.简要说明传统数据库的局限性。《习题解析》p144题1
2.简要说明第三代数据库技术的基本特征以及人们研制新一代数据库技术的主要方法和途径。《习题解析》p145题2
考试注意要点:
1.注意引号的用法:字符型常量要加引号,数值型常量不加引号。
2.字段名、关系名之间应该使用逗号(,)分隔,不要写成顿号(、)。
3.字段名、关系名等必须和题目中的一致,不要随意更改。
4.关系优化后要标注主键。
5.ER图中的联系要标注联系的类型,即加上:1:1、1:n、m:n。
6.名词的正确:事物(事务)、审记(审计)、日记(日志)。 |