一、数据库系统
1.数据库系统的基本概念
数据data:描述事物的符号记录,可以是文字、图形、图像、声音和语言等
数据库database:长期存储在计算机内、有组织、可共享的数据集合
数据库管理系统DBMS:由数据库、硬件、软件和人员4大部分组成,主要功能有数据定义,数据库操作,数据库运行管理,数据组织、存储和管理,数据库的建立和维护及其它功能
大数据的特征:
无法用拥有的软件工具提取、存储、搜索、共享、分析和处理的海量的、复杂的数据集合。特点如下:
- Volume(大量化)
- Velocity(快速化)
- Variety(多样化)
- Value(价值密度低)
2.三层模式两层映射
3.数据库的设计过程
4.数据模型
概念数据模型/信息模型
按用户的观点对数据和信息建模,是现实世界的第一层抽象,主要用于数据库设计。
- E-R模型(实体联系模型)
基本数据模型
按计算机系统的观点对数据建模,是现实世界数据特征的抽象,用于DBMS的实现。
- 层次模型:用树形结构表示实体及其之间的联系
- 网状模型:用网状结构表示实体及其之间的联系
- 关系模型:用二维表结构表示实体及其之间的联系
- 面向对象模型:采用面向对象的方法来设计数据库。以对象为单位,每个对象包含对象的属性和方法。用对象、类型、继承和方法等基本面向对象技术构造的实体及其之间的联系
数据模型的三要素
- 数据结构: 是所研究的对象类型的集合,是对系统静态特性的描述
- 数据操作: 对数据库中各种对象的实例允许执行的操作的集合,包含操作及操作规则,是对系统动态特性的描述
- 数据的约束条件: 是一组完整性规则的集合。对于具体的应用数据必须遵循特定的语义约束条件,以保证数据的正确、有效和相容
- 实体完整性约束: 规定基本关系R的主属性A不能取空值
- 参照完整性约束: 关系模型中实体与实体间的联系
- 用户自定义完整性约束: 针对某一具体的关系数据库的约束条件,所涉及的数据必须满足的语义要求,由环境决定。
二、数据流图
数据流图:是一种结构化涉及工具,以图形的方式描绘数据在系统中流动的处理的过程
1.数据流图
外部实体:系统中数据的外部来源和去处。存在于系统之外的人员、组织或其它系统。
加工:对数据的逻辑处理功能,也可看作是对数据的变换操作。别民:处理、功能
数据存储:表示某种数据保存后的逻辑统称(一般名称是XX文件,XX表)
数据流:加工功能的输入数据或输出数据
- 流入数据存储的数据流:将加工后的数据写入或修改到数据存储中
- 流出数据存储的数据流:从数据存储中查询查询获取数据,不改变原数据
2.其它需求分析工具
除了数据流图,在需求分析阶段还会用到以下工具:
- 数据字典: 定义数据流图中各个成分的具体含义,为系统的分析、设计及维护提供了有关元素一致定义和详细描述。包含4类条目:数据流、数据项、数据存储和基本加工。
- 判定表: 描述加工逻辑,对于不同条件的不同处理方式。定义条件取值的组合及定义在各种取值的组合下应执行的动作
- 判定树: 与判定表相同,也能用于表示问题逻辑中的条件和动作的对应关系。判定树用内部节点表示问题中的条件,用叶子节点表示活动,用根节点表示问题的名字。
三、概念模型
1.ER模型
四、关系模型
1.规范化理论-主键
主键: 关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可能成为一个主键。
主键是唯一的(实体完整性)
一个数据表中只能包含一个主键。候选键是对具有关系键特性的一个或多个属性(组)的统称。一个数据表中可以有多个候选键。
比如:
学生表(学号,姓名,身份证号,性别,班级)
课程表(课程编号,课程名,学分)
成绩表(学号,课程号,成绩)
复合键: 符合键(组合键)将多个列作为一个索引键,一般用于符合索引。
外键: 用于与另一张表的建立关联。能确定另一张表记录的字段,保持数据的一致性,比如,A表中的一个字段,是B表的主键,那它就是A表的外键。
2.E-R图转关系模式
- 一个实体型转换为一个关系模式
- 联系转关系模式:
1:1联系:可将联系合并至任意一端的实体关系模式中
1:n联系:可将联系合并至n端实体关系模式中
m:n联系:联系必须单独转成关系模式
- 三个以上实体间的一个多元联系
五、关系运算
1.并、交、差
列: 一列(数据元素)包含了相同的数据,例如邮政编码的数据
行: 一行(元组,或记录)是一组相关的数据,例如一条用户订阅的数据
2.笛卡尔积、投影和选择
3.自然连接
六、SQL语言
1.创建表
2.修改与删除
3.数据更新
4.创建索引
5.查询语句
6.别名和匹配
七、数据库控制
1.数据库的控制功能