1.1数据库发展概述

数据及数据处理

       数据是存储在某一种媒体上能够识别的物理符号。

       数据处理是把数据加工处理成为信息的过程。      信息是数据根据需要进行加工处理

后得到的结果,信息有意义。

人工管理

计算机系统不提供对用户数据的管理功能,数据不独立,不能共享,不能单独保存

文件管理

磁盘、磁鼓等,数据以“文件”的形式长期保存在外部存储器,数据冗余、数据联系弱等缺陷

数据库管理

克服了文件系统的缺陷,更高级、更有效的管理,数据冗余明显减少,实现了数据共享。

分布式数据库:

是数据库技术与网络技术相结合的产物。

       分布式数据库:一种是物理上是分布的,逻辑上集中;一种是在物理和逻辑上都是分布的。

面向对象数据库系统:

面向对象技术与数据库技术结合,提高应用开发效率,增强界面友好型,系统的可伸缩性,可扩展性。

数据仓库

是支持管理决策过程的、面向主题的、集成的、稳定的、随着时间变化的数据集合。

数据挖掘

又称为数据库中的知识发现,从大量数据中提取或“挖掘”知识。

数据挖掘和数据仓库的协同工作,迎合和简化数据挖掘过程中的重要步骤,条数据挖掘的效率和能力,确保数据来源的广泛性和完整性。

数据仓库应用中极为重要和相对独立的工具。

大数据

       所涉及的数据量规模巨大到无法通过人工,在合理时间内达到截取、管理、处理并整理称为人类所能解读的信息。

特点:Volume数据量大、Variety数据多样新、Velocity处理熟读快、Value价值。

云计算技术、分布式处理技术、存储技术和感知技术等技术

1.2数据库系统简述

数据库

长期存储在计算机内,有组织的、可共享的、统一管理的相关数据的集合,按一定的数据模型进行组织、、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性。

数据库管理系统:

       数据库系统的核心软件,支持用户对数据库的基本操作,建立运行和维护进行统一管理和控制。

       数据定义功能:数据定义语言DDL

       数据操纵功能:数据操纵语言DML

数据库运行控制功能:数据控制语言DCL

数据库维护功能:

数据库通信功能:

数据库系统

数据库系统的组成

数据库系统DBS:引入数据库技术后的计算机系统:

       包括五个部分:数据库(DB)、数据库管理系统(DBMS)及其相关的软件、计算机硬件系统、数据库管理员(DBA)、用户。

数据库系统的特点

  1. 数据底冗余、共享性高。
  2. 数据独立性高。
  3. 有统一的数据控制功能。

数据库应用系统

系统开发人员利用数控系统的资源,为某一类人开发的软件系统。

如:银行业务管理系统、仓库管理系统、财务管理系统、飞机售票管理系统、教务管理系统等。

数据库系统的三级模式及二级映射结构

三级模式分别是外模式、概念模式和内模式。

二级映射:外模式到概念模式的映射 和 概念模式到内模式的映射。

外模式:也成为子模式或用户模式,它是数据库用户(包括应用程序员和最终用户)所见到和使用的局部数据逻辑结构的描述,一个概念模式可以有多个外模式。……

概念模式:也称为模式,是全局数据逻辑结构的描述,是所有用户的公共数据视图。

内模式:存储模式或物理模式,是数据在存储介质上的保存方式

数据库系统的二级映射

       外模式到概念模式的映射:保证了数据的逻辑独立性

       概念模式到内模式的映射:保证了数据的物理独立性

1.3数据模型

概念数据模型——E-R模型

面向数据库用户的现实世界的数据模型

1.概念模型中的基本概念

实体:客观存在并可相互区别的事物称为实体。

属性:描述实体的特征称为属性。

关键字:能唯一标识实体的属性或属性的组合称为关键字

域:属性的取值范围称为该属性的域。

实体型:属性的集合标识一个实体的类型。

实体集:同类型的实体的集合称为实体集。

2.两个实体之间的联系

       一对一联系:例如:一个学校只有一个校长,一位校长只能管理一个学校

       一对多联系:例如:学校的一个系有多个专业,而一个专业只属于一个系

       多对多联系:例如:一名学生可以选多门可课程,一门课程可以被多名学生选修。

3.E-R方法

       实体-联系方法 是使用最广泛的概念数据模型设计方法,该方法用E-R图来描述现实世界的概念数据模型。

  1. 实体:实体型用矩形表示,矩形框内写上实体名称。
  2. 属性:属性用椭圆形表示,写明属性名。
  3. 联系:菱形表示,写联系名,连线旁标上联系的类型(如1:1、1:n或m:n)

逻辑数据模型

描述数据库中数据的表示方法和数据库结构的实现方法。

  1. 层次数据模型

采用树形结构表示实体与实体间的联系。

(1)有且仅有一个结点没有父结点,该结点称为根结点。

(2)除根结点以外的其他结点右且仅有一个父结点,没有子女的节点称为叶结点

2.网状数据模型

       可以看做是层次模型的一种扩展。

  1. 可以有一个以上的结点无父结点。
  2. 允许结点有多个父结点。
  3. 结点之间允许有两种或两种以上的联系。

3.关系数据模型

以二维表的方式组织数据,自20世纪80年代以来,几乎所有的数据库系统都建立在关系模型之上。

基于关系模型建立的数据库系统称为关系数据库系统。

4.面向对象数据模型

       用面向对象的观点来描述现实世界实体的逻辑组织、实体之间的限制和联系的模型。

物理数据模型

面向计算机物理表示得到模型

1.4关系数据库

关系模型的基本术语

  1. 关系
  1. 一个关系就是一个二维表,每个关系都有一个关系名,在关系数据库管理系统中,通常把二维表称为数据库,也称为表。

关系模型的一般格式:

关系名(属性名1,属性名2,…,属性名n)

在Access中,关系模式表示为表模式,它对应于一个表的结构,

表名(字段名1,字段名2,…,字段名n)

例如:“学系”表的关系模式为:学系(学系代码,学系名称,办公电话,学系简介)

  1. 属性
  2. 元组
  3. 分量
  4. 候选关键字
  5. 主关键字
  6. 外部关键字
  7. 主属性

关系的性质

每一列的分量是同一类型的数据,来自同一个域

不同的列要给与不同的属性名。

列的顺序无所谓

行的顺序无所谓

任意两个元组不能完全相同

每一个分量必须是不可再分的数据项

关系完整性约束

       实体完整性约束

              主键不能为空值,组成主键的所有属性都不能取空值。

       参照完整性约束

              关系之间相关联的基本约束,它不允许关系引用不存在的元组,即外键取值只能是关联关系中的某个主键值或者为空值。

       用户定义的完整性约束

              针对具体数据环境与应用环境由用户具体设置的约束,应用中数据的语义要求,保证数据库中数据的正确性。

关系规范化

第一范式

       所有属性都是最基本的、不可再分的数据项,则满足第一范式(简记为1NF)

第二范式

       满足第一范式,且非主属性都完全依赖于主键,则满足第二范式。

第三范式

       满足第二范式,且所有非主属性对任何主键都不存在传递依赖,则满足第三范式

1.5关系运算

传统的集合运算

并运算

两个结构相同的关系,两个关系所有元组组成一个新的关系,若有相同的元组则只留下一个。

交运算

       两个关系中公共元组组成一个新的关系。

差运算

       将属于R但不属于S的元组组成一个新的关系。(减去R和S相同部分,留下R的其余部分)

集合的广义笛卡尔积运算

       如果R是m元关系,有i个元组;S是n元关系。有j个元组;则笛卡尔积R x S是一个m+n元关系,有i x j个元组关系。

专门的关系运算

选择

选择出满足给定条件的元组

投影

从指定关系中选取某些属性

联接

两个关系中满足联接条件的元组

       类型:自然联接、内联接、左外联接、右外联接、全外联接等,最常用的是自然联接

       关系R与关系S的除运算应满足的条件是:关系S的属性全部包含在关系R中,关系R的一些属性不包含在关系S中。(R>S)

由R中除去S中的属性之外的全部属性组成,元组由R与S中在所有相同属性上有相等值的那些元组组成 (R-S的属性,取R和S相等值的元组)

1.6数据库设计简述

数据库设计

       需求分析 产生需求说明书

       概念设计 产生概念数据模型

       逻辑设计 产生逻辑数据模型

       物理设计 产生物理数据模型

       编码阶段

       测试阶段

       运行阶段

       维护阶段

数据库需求分析阶段

数据库应用开发人员通过详细调查现实世界中要处理的对象,充分了解用户单位目前现实的工作概况,弄清除用户的各种需求,然后再此基础上确定新系统的功能要求,编写出需求而说明书,要考虑今后的功能扩充和修改,要具有前瞻性。

1.调查用户的需求

       调查的重点“数据”和“处理”

       信息要求:在数据库中需存储哪些数据

       处理要求:用户要完成什么处理功能。

       安全性和完整性的要求:数据库中的数据要安全、完整。

  1. 分析和表达用户的需求

经常采用的方法有结构化分析方法和面向对象的方法

结构化分析方法用自顶向下、逐层分解的方式分析系统。

面向对象方法通常采用统一建模语言(Unified Modeling Language,UML)来描述

数据库的概念设计阶段

分析数据间内在的语义关联,在此基础上建立一个数据的抽象模型——概念数据模型。不依赖于任何的数据库管理系统(DBMS)

       E-R图 设计步骤

  1. 确定实体
  2. 确定实体的属性
  3. 确定实体的主键
  4. 确定实体间的联系类型
  5. 画出E-R图

数据库的逻辑设计阶段

       将概念数据模型转换成为DBMS所支持的逻辑数据模型

       对于关系数据库管理系统(RDBMS)来说,就是,将 概念数据模型 转换成 关系数据模型E-R 转换成 指定的RDBMS所支持的关系模型

数据库的物理设计阶段

设计数据库的存储结构和物理实现的方法

主要目的:对数据库内部物理结构做调整并选择合理的存取路径,提高数据库访问速度并有效利用存储空间。

       目前,数据库已大量屏蔽内部物理结构,用户参与设计任务少,一般只有索引设计、分区设计等