今天总结了数据库的知识,有用的话点个赞再走吧,持续更新中……
5.1 数据库系统的基本概念
5.1.1 数据、数据库、数据库管理系统
1. 数据
数据定义:描述事物的符号记录 分类:
- 临时性(随程序的结束而消亡)、持久性(对于数据长时间长时间持久作用)
- 型(key)、值(value)
型: 整型、实型、字符型
数据结构:包括了将多种相关数据一一定的结构方式组合构成特定的数据框架 数据库中在特定条件下称数据结构为数据模式
2. 数据库
定义:数据的集合,它具有统一的结构形式并存防御统一的存储介质内,是多种应用数据的集成,并可为各个应用所共享 特点: 集成、共享
3. 数据库管理系统
定义 : 数据库管理系统(database management system. DBMS)是数据库的机构,是一种系统软件,负责数据库的数据组织、操纵、维护、控制、保护、服务等。
数据库管理系统是数据库系统的核心
功能 (1)数据模式定义 (2)数据存取的物理构建 (3)数据操控 (4)数据的完整性、安全性定义与检查 (5)数据库的并发控制与恢复 (6)数据的服务
数据语言 (1)数据定义语言 (2)数据控制语言 (3)数据操控语言
上述数据语言按其使用方式具有两种结构方式: 交互式语言:语言简单,能在终端上即时操作,又称自含型或自主型语言 宿主型语言:一般可嵌入某些宿主语言(host languange),如C/c++\Java等高级过程性语言。
1.关系数据库中普遍使用了 结构化查询语言SQL(structured query language)是一种介于关系代数和关系演算的非过程性操作语言
sql不要求用户指定对数据的存放方式,也不需要用户了解具体的数据存放方式。
2.数据库管理系统还有为用户提供服务的服务性程序 包括:初始装入程序、数据转存程序、性能监测程序、数据库再组织程序、通信程序等
4.数据库管理员
主要工作 : (1)数据库设计(数据模式的设计) (2)数据库维护 (3)改善系统性能、提高系统效率
5.数据库系统
组成部分 数据库(数据) 数据库管理系统(软件) 数据库管理员(人员) 系统平台之一(硬件平台) 系统平台之二(软件平台)
硬件平台:计算机(硬件的基础平台)、网络(结构方式以客户/服务器(C/s)方式与浏览器/服务器(B/s)方式为主)
软件平台:操作系统(软件的基础平台 e.g.UNIX WINDOWS)、数据库系统开发工具(java\c\html等) 、接口软件
6.数据库应用系统(database application system,DBAS)
数据库应用系统组成: 数据库系统+应用软件+应用界面
层次结构: 应用系统>应用开发工具软件>数据库管理系统>操作系统>硬件
5.1.2 数据库系统的发展
三个阶段: 人工管理阶段、文件管理系统、数据库系统阶段
5.1.3 数据库系统的基本特点
1.数据的集成性
表现在以下方面: (1)统一数据结构方式 (2)全局与局部的结构模式
2.数据的高共享性与低冗余性
减少了不必要的存储空间,避免数据的不一致性(一致性指:系统中的同意数据的不同出现应保持相同的值)
3.数据独立性
- 物理独立性 : 数据的物理结构改变不影响数据库的逻辑结构从而不影响应用程序
- 逻辑独立性 : 同上
4.数据统一管理与控制
5.1.4 数据库系统的内部结构体系
-
三级模式: 概念级模式 (是数据库系统的全局数据逻辑的描述,是全体用户公共数据视图、是一种抽象的描述,不涉及具体的硬件环境与平台、与具体软件环境无关) (主要描述数据的概念记录类型以及它们间的关系,还包括一些数据间雨衣约束,对它的描述可用DBMS中的DDL语言定义) 内部模式(又称物理模式、给出了数据库的物理存储结婚后与物理存取方法。内模式的物理模式主要体现在操作系统及文件级上。对一般用户是透明的,其设计直接影响数据库的性能) 外部模式(用户数据视图) 以概念模式为框架所组成的数据库叫概念数据库,外模式–用户数据库、内模式–物理数据库 这是三种数据库真实存在于计算机外存中,其他两种数据库并不真正存在于计算机中,而是通过两种映射有物理数据库映射而成。 -
二级模式: (1)概念级到内部级的映射: 给出了概念模式数据的全局逻辑结构到物理存储结构的关系,此种映射一般由DBMS实现
(2)外部级到概念级的映射 概念模式是一个全局模式,外模式是用户的局部模式 一个概念模式可以定义多个外模式、每个外模式是概念模式的一个基本视图 外模式到概念模式的映射给出了外模式与概念模式的对应关系。一般有DBMS来实现。
5.2 数据模型
5.2.1 数据模型的基本概念
现实世界:所见到的客观世界中的划定边界的一个部分环境 信息世界:通过抽象对现实世界的数据库级上的刻画所构成的逻辑模型 计算机世界: 在信息世界基础上致力于其在计算机物理结构上我的描述,从而形成的物理模型
数据模型: 是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为、约束条件。
数据模型描述内容: (1)数据结构 描述数据类型、内容、性质、数据兼联系 数据操作和数据约束建立在数据结构之上 (2)数据操作 主要描述在响应数据结构上的操作类型与操作方式 (3)数据约束 主要描述在相应数据结构上的语法、语义联系
数据模型按不同应用层次分为三种模型: (1)概念性数据 面向客观世界、面向用户的模型 (2)逻辑数据模型(又称数据模型) 面向数据库的模型 e.g.层次模型、网状模型、关系模型、面向对象模型 (3)物理数据模型(又称物理模型) 一种面向计算机物理表示的模型,给出数据模型在计算机上的物理结构的表示
5.2.2 E-R 模型(entity-relationship model)
1.E-R 模型的基本概念
(1)实体 是概念世界的基本单位,是客观存在的且又能相互去别的事物。 凡是有共性的实体可以组成一个集合成为实体集。 (2)属性 属性刻画实体的特征 一个属性的取值范围称为该属性的值域(value domain) 或(value set) (3)联系
实体间的联系: 【1】两个实体集间的联系 e.g. 1:1,M:1,1:M 【2】多个实体集间的联系 【3】一个实体集内部的联系
2. E-R模型的三个基本概念之间的连接关系
(1)实体是概念世界中的基本单位,属性附属于实体,本身并不构成独立单位 属性有属性域,每个实体可取属性域内的值,一个实体的所有属性取值组成了一个值集叫元祖(tuple) 实体有型与值之别,一个实体的所有属性构成了这个实体的型,而实体中属性值的集合构成这个实体的值 (2)实体(集)与联系 实体集间可通过联系建立连接关系
5.2.3 层次模型
基本结构是树形结构
5.2.4 网状模型
网状模型是一个不加任何条件限制的无向图,一般采用分解方法是分成若干个二级树 在网状模型DBTG(data base task group)标准中, 基本结构简单二级树叫系(set),基本数据单位是记录(record) 它相当于E-R模型中的实体(集) 记录又可由若干数据项(data item)组成,相当于简单E-R模型中的属性。 系中有一个首记录(owner record) 相当于简单二级树中的根, 若干成员你录(member record) 相当于简单二级树中的叶 首记录与成员记录间的联系用有向线段表示。
5.2.5 关系模型
1.关系的数据结构
关系模型用二维表表示:表框架(frame)+元组(tuple) 表框架由n个命名的属性(attribute)组成,n为属性元数(arity) 每个属性有一个取值范围称为 值域(domain)
每行数据称为元组 ,一个元组有n个元组分量组成,每个元组分量是表框架中每个属性的投影值,一个表框架可以存放m个元组,称m为表的基数。
关系 满足以下7个条件的二维表: (1)元组个数有限性 (2)元组的唯一性 (3)元组的次序无关性 (4)元组分量的原子性:数据不可分割 (5)属性名唯一性 (6)属性的次序无关性 (7)分量值域的同一性:属性的分量具有与该属性相同的值域
键(或码):标识元素的最小属性集 候选码(候选键):二维表中可能有若干个键 主键(键):从候选键中选取一个作为用户使用的键 外键:表A中某属性集是表B的键,则称该属性集为A的外键
关系元组的分量允许出现空值(null value),但关系的逐渐不能空,需要定义有关空值的运算。
关系框架+关系元祖=关系 语义相关的关系集合=关系数据库 关系的框架成为关系模式 语义相关的关系模式集合构成关系数据库模式 关系模式支持子模式,对应用户数据库称视图。
2.关系操纵
(1)数据查询
(2)数据删除 横向定位(元组选择)->元组删除
(3)数据插入 元祖插入
(4)数据修改 1关系的属性指定 2关系的元祖选择 3两个关系的合并 4一个或多个关系的查询 5关系中元组的插入 6关系中元组的删除
3. 关系中数据的约束
其中前两种完整性约束系统自动支持,最后一种由关系数据库提供完整性数据约束语言,用户利用该语言写出约束条件,运行时由系统自动检查。 (1)实体完整性约束 主键不能为空,因为主键唯一决定元组
(2)参照完整性约束 是关系之间相关联的基本约束,不允许关系引用不存在的元组,即:关系中的外键要么是关联关系中实际存在的元组,要么就为空值
(3)用户定义的完整性约束 针对具体环境与应用环境有用户具体设置的约束,反映应用数据的具体要求
5.3 关系代数
1. 关系模型的基本操作
待更……
|