目录
一、数据库系统的基本概念(重点)
1.1 信息、数据、数据库(DB)
数据(D):描述信息的符号。
信息(I):有价值的数据。
信息和数据基本概念的对应关系:
- ①实体—记录:对应数据库表中的行
- ②实体集—文件:对应数据库中的一张表
- ③属性—字段:对应数据库表中的列
数据库(DB):存储在计算机内有组织的可共享的数据集合。
数据库特点:数据有结构、独立性高、共享性高、冗余度低、集成度高。
1.2 数据库系统(DBS)
数据库系统的5个组成部分:数据库、数据库管理系统(核心)、数据库管理员(DBA)、硬件平台(计算机、网络)、软件平台(操作系统、数据库系统开发工具)。
数据库系统的发展:人工管理阶段、文件系统管理阶段、数据库系统阶段。
数据库系统的主要特点(重点掌握):
- ①统一管理的结构化数据:组织数据前先组织结构。
- ②数据的冗余度小:节约存储空间、减少数据不一致现象的发生。
- ③数据共享性高:数据库技术的根本目标。
- ④数据独立性高:数据与程序无关。物理独立性(硬)、逻辑独立性(软)。
1.3 数据库管理系统(DBMS)
数据库管理系统是数据库的机构,是用来帮助用户建立、使用、管理、加工和维护数据库而配置的专用系统软件,他在操作系统的支持下对数据库进行统一的管理和控制。
DBMS功能:
- ①数据模式定义:为数据库构建模式(数据框架)。
- ②数据存取的物理构建:
- ③数据操纵:增、删、改、查。
- ④数据的完整性、安全性定义和检查。
- ⑤数据库的并发控制与故障恢复。
- ⑥数据的服务。
DBMS提供的数据语言:
- ①数据定义语言(DDL):负责数据的模式定义与数据的物理存取构建。
- ②数据操纵语言(DML):负责数据的操纵,包括增、删、改、查等。
- ③数据控制语音(DCL) :负责数据完整性、安全性的定义与检查,以及并发控制、故障恢复等功能,包括系统初启程序、文件读写与维护程序、存取路径管理程序、缓冲区管理程序、安全性控制程序等。
数据库应用系统(了解):程序员根据用户的需要在数据库管理系统的支持下,用数据库管理系统提供的命令编写、开发并能够在数据库管理系统的支持下运行的程序和数据库的总称,如财务管理系统、人数管理系统等。
1.4 数据库系统的内部结构体系
数据库系统的三级模式:
- ①概念级|概念模式:是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图。
- ②用户级|外模式(也称子模式或用户模式):是用户可以看见的模式、视图。(可以有无数个)
- ③存储级|内模式(也称物理模式或存储模式):给出了数据库物理存储结构与物理存取方法。(只有一个)
数据库系统的两级映射:概念模式到内模式映射、外模式到概念模式映射
注意:DBS包含DBMS和DB,DBMS管理DB和D。
二、数据模型
2.1 数据模型概述(了解)
数据模型的概念:是一种表示工具,是表示实体、实体之间联系的形式。
数据模型的3个分类:概念数据模型(简称概念模型,如E-R模型),逻辑数据模型(简称数据模型,如层次模型、网状模型、关系模型、面向对象模型),物理数据模型(简称物理模型)。
数据模型的3个组成部分:数据结构、数据操作、数据约束。
2.2 实体-联系(E-R)模型(重点)
E-R模型:将现实世界的要求转化成实体、属性、联系等几个基本概念,以及它们间的两种基本连接关系,并且可以用一种图形非常直观地表示出来。
矩形框-实体、椭圆框-属性、菱形框-联系。
2.3 实体间的联系(重点)
实体间联系的形式:一对一联系(如国家与首都)、一对多联系(如宿舍与学生)、多对多联系(如学生与课程)。
2.4 基本数据模型
层次模型:用树形结构来表示实体、实体间联系的模型。关键词:树
网状模型:用网络结构来表示实体、实体间联系的模型。关键词:网、交叉
关系模型:用二维表格来表示实体、实体间联系的模型。关键词:关系、表
关系的相关概念:一张二维表等价于一个关系,实体的属性转换成关系的属性(列)。
2.5 关系模型的重要概念——码
候选码:关系模式中的属性或属性组能唯一区分一条记录。
主码(主键):从候选码中选出一个来作为主码。
主属性:指包含在候选码中的任何属性。
非主属性:不包含在任何候选码中的属性
规范化:在关系数据库中的每一个关系(数据表)必须满足一定的要求,满足不同要求的为不同的范式(缩写NF)。
第一范式(1NF):每个分量必须是不可再分的。
第二范式(2NF):每一个非主属性都完全依赖候选码。包含第一范式,另外包含两部分内容,一是表必须有主键,二是没有包含在主键中的属性必须完全依赖于主键,而不能只依赖于主键的一部分。
第三范式(3NF):每一个非主属性都不传递依赖候选码。包含第二范式,另外非主键属性必须直接依赖于主键,不能存在传递依赖。
BC范式(BCNF):每一个决定的属性集都包含候选码。
2.6 函数依赖
完全函数依赖:如A->B、C->D,(A,C)->E
部分函数依赖:只依赖其子集,如A->B、C->D,(A,C)->B、(A,C)->D
传递函数依赖:如A->B、B->C,A->C
三、关系代数运算(重点)
3.1 关系代数运算的概念
关系代数概念:一种抽象的查询语言,用对关系的运算来表达查询,作为研究关系数据语言的数学工具。
关系的含义:二维表格。即1个关系对应1张二维表
术语:
- ①属性:二维表中的一列称为属性。
- ②元组:二维表中的一行称为元组,一个元组由若个分量组成,分量不可再分。
- ③关系操纵:查询、增加、删除、修改。
- ④关系中的数据约束:实体完整性约束、参照完整性约束、用户定义的完整性约束。
关系运算的特点:是对二维表格的运算;运算对象是关系;运算结果是关系。
关系代数运算符:集合运算符、专门关系运算符、比较运算符、逻辑运算符。
3.2 关系代数的运算(重点掌握)
3.2.1 传统的集合运算
并(T=R∪S,列不变、行增加)
举例:R是2行3列,S是1行3列,T是3行3列。
行增加,列不变,因此是并运算,即T=R∪S
交(T=R∩S,列不变、行减少)
差(T=R-S,列不变、行减少)
笛卡尔积(T=R×S,列增加、行增加):两张表做乘法。
3.2.2 专门关系运算
选择(列不变、行减少):在一张表中取符合条件的行(元组)。
投影(列减少、行不变):在一张表中取指定的列(属性)。
商(T=R÷S,列减少、行减少):两张表做除法。
连接( ):在笛卡尔积的基础上取满足一定条件的元组。
3.3 关系模型的基本运算(了解即可)
插入、删除、修改
四、数据库设计与管理
4.1 数据库设计概述
基本任务:根据用户对象的信息需求、处理需求和数据库的支持环境设计出数据模式。
两种设计方法(了解):
- ①以信息需求位数,兼顾处理需求(面向数据的方法)。【主流方法】
- ②以处理需求为主,兼顾信息需求(面向过程的方法)。
4.2 数据库设计的基本步骤
需求分析:调查和分析用户的业余活动和数据的使用情况,弄清数据的种类、范围、数量及它们在业务中交流的情况,确定用户对数据库系统的使用要求和各种约束条件等,形成用户需求规约。从技术可行性、经济可行性、法律可行性等方面进行分析。
概念设计:对用户要求描述的真实世界,通过对其中各处的分类、聚集和概括,建立抽象的概念数据模型。用E-R图工具设计数据库的概念模式(绘制E-R图的阶段)。
逻辑设计:将现实世界的概念数据模型设计称数据库的一个逻辑模式,即适应于某种特定数据库管理系统所支持的逻辑数据模式。将E-R图转换称具体DBMS所支持的逻辑结构。
物理设计:选择合适的存储结构和存储路径(设计数据库的内模式)。