第一章 绪论
前言 目前大三,正在学习数据库系统,做一些笔记总结一下学习~ 以便复习使用!
数据库系统概论(王珊 萨师煊 编著)为参考书。
1.1 数据库的系统概述
1.1.1 数据库的4个基本概念
一、数据(data)
1)定义:是数据库中存储的基本对象,描述事物的符号记录
2)种类:数字、文字、图形、图像、音频、视频等
3)特点:数据与其语义是不可分的
二、数据库(DataBase,DB)
1)定义:数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合
2)基本特征:
- 按一定的数据模型组织、描述和储存
- 具有较小的冗余度
- 较高的数据独立性
- 易扩展性
- 可为各种用户共享
三、数据库管理系统(DateBaseManageSystem DBMS)
1)定义:是位于用户与操作系统之间的一层数据管理软件。
2)用途:科学地组织和存储数据,高效地获取和维护数据
3)功能:
- 数据定义功能
提供数据定义语言(DDL):创建、修改、删除
定义数据库中的数据对象的组成与结构 - 数据组织、存储和管理
分类组织、存储和管理各种数据
确定组织数据的文件结构和存取方式
实现数据之间的联系
提供多种存取方法 - 数据操纵功能
提供数据操纵语言(DML)
方便用户操纵数据
实现对数据库的基本操作(如查询、插入、删除和修改等) - 数据库的事务管理和运行管理
由数据库管理系统统一管理和控制数据库的建立、运用和维护
保证事务的正确运行
保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复 - 数据库的建立和维护功能
数据库初始数据的输入、转换功能
数据库的转储、恢复功能
数据库的重组织功能和性能监视 、分析功能等 - 其他功能
数据库管理系统与网络中其他软件系统的通信功能
数据库系统之间或与文件系统的数据转换功能
异构数据库之间的互访和互操作功能
四、数据库系统(DataBase System,DBS)
1)定义:由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员组成的存储、管理、处理和维护数据的系统
2)构成:
- 数据库
- 数据库管理系统(及其开发工具)
- 应用系统
- 数据库管理员
1.1.2 数据管理技术的产生和发展
1.人工管理阶段
背景:
- 应用背景——科学计算
- 硬件背景——无直接存取存储设备
- 软件背景——没有操作系统
- 处理方式——批处理
特点:
- 数据的管理者——用户(程序员)
- 数据面向的对象——某一应用程序
- 数据的共享程度——无共享,冗余度极大
- 数据的独立性——不独立,完全依赖于程序
- 数据的结构化——无结构
- 数据控制能力——应用程序自己控制
2.文件系统阶段:
背景:
- 应用背景——科学计算、数据管理
- 硬件背景——磁盘、磁鼓
- 软件背景——有文件系统
- 处理方式——联机实时处理、批处理
特点:
- 数据的管理者——文件系统
- 数据面向的对象——某一应用
- 数据的共享程度——共享性差,冗余度大
- 数据的独立性——独立性差
- 数据的结构化——记录内有结构、整体无结构
- 数据控制能力——应用程序自己控制
3.数据库系统阶段:
背景:
- 应用背景——大规模数据管理
- 硬件背景——大容量磁盘、磁盘阵列
- 软件背景——有数据库管理系统
- 处理方式——联机实时处理、分布处理、批处理
特点:
- 数据的管理者——数据库管理系统
- 数据面向的对象——现实世界(一个部门、企业、跨国组织等)
- 数据的共享程度——共享性高,冗余度小
- 数据的独立性——具有高度的物理独立性和一定的逻辑独立性
- 数据的结构化——整体结构化,用数据模型描述
- 数据控制能力——由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力
1.1.3 数据库系统的特点
- 数据结构化
数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别 - 数据的共享性高、冗余度低且易扩充
数据共享可以大大减少数据冗余,节约存储空间。数据共享还能够避免数据之间的不相容性与不一致性 - 数据独立性高
物理独立性是指用户的应用程序与数据库中数据的物理存储是相互独立的
逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的 - 数据由数据库管理系统统一管理和控制
1)数据的安全性保护
2)数据的完整性检查
3)并发控制
4)数据库恢复
1.2 数据模型
数据模型(data model):是对现实世界数据特征的抽象,是数据库系统的核心和基础
1.2.1 两类数据类型
一、概念模型(也称信息模型)
作用:第一次抽象,用于数据库设计
二、逻辑模型和物理模型 :第二次抽象
1)逻辑模型:主要包括层次模型、网状模型、关系模型、面向对象模型和对象关系数据模型、半结构化数据模型等
2)物理模型:是对数据最底层的抽象,它描述数据在系统内部的表示方式和存取方法,或在磁盘或磁带上的存储方式和存取方法,是面向计算机系统的
1.2.2 概念模型
作用:
1.用于信息世界的建模
2.现实世界到信息世界的第一层抽象
3.是数据库设计人员进行数据库设计的有力工具
4.是数据库设计人员和用户之间进行交流的语言
一、信息世界的基本概念
1)实体:客观存在并可相互区别的事物
2)属性:实体所具有的某一特性
3)码:唯一标识实体的属性集称为码
4)实体型:用实体名及其属性名集合来抽象和刻画同类实体
5)实体集合:同一类型实体的集合
6)联系:实体之间的联系通常是指不同实体集之间的联系
二、概念模型的一种表示方法:实体-联系方法
该方法用E-R图来描述现实世界的概念模型,E-R方法也成为E-R模型。
注意:只画直接联系 供应商和厂家之间并不是之间联系,他们之间的联系是建立在零件的基础之上的,如果没有零件,他们不存在任何关系。
1.2.3 数据模型的组成要素
数据模型通常由数据结构、数据操作和数据完整性约束条件三部分组成
一、数据结构:数据结构描述数据库的组成对象以及对象之间的联系,是对系统静态特性的描述
二、数据操作:数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及有关的操作规则
三、数据的完整性约束条件:一组完整的规则的集合,用以限定复合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容
1.2.4 常用的数据模型
- 层次模型
- 网状模型
- 关系模型
- 面向对象数据模型
- 对象关系数据模型
- 半结构化数据模型
1.2.5 层次模型
一、层次模型的数据结构
基本条件:
- 有且只有一个结点没有双亲结点,这个结点称为根节点
- 根以外的其他结点有且只有一个双亲你结点
特点:任何一个给定的记录值只能按其层次路径查看,没有一个子女记录值能够脱离双亲记录值而单独存在
二、层次模型数据库的操纵与完整性约束
操纵:查询、插入、删除、更新
三、层次模型的优缺点
优点:
- 数据结构比较简单清晰
- 查询效率高
- 提供了良好的完整性支持
缺点:
- 现实世界中很多联系是非层次性的,如结点之间具有多对多联系,不适合用层次模型
- 如果一个结点具有多个双亲结点等,不适合层次模型
- 查询子女结点必须通过双亲结点
- 由于结构严密,层次命令趋于程序化
1.2.6 网状模型
一、网状模型的数据结构
条件:
- 允许一个以上的结点无双亲
- 一个结点可以有多个双亲
二、网状模型的数据操纵与完整性约束
一般来说没有层次模型那样严格的约束条件
三、网状模型的优缺点:
优点:
- 能够更为直接的描述现实世界,如一个结点可以有多个双亲,结点之间可以有多种联系
- 育有良好的性能,存取效率高
缺点:
- 结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于醉种用户掌握
- 网状模型的DDL、DML复杂,并且要嵌入某一种高级语言(如COBOL、C)中,用户不容易掌握、不容易使用
- 由于记录之间的联系是通过存取路径实现的,应用程序在访问数据时必须选择适当的存取路径,因此用户必须了解系统结构的细节,加重了编写应用程序的负担
1.2.7 关系模型
一、关系模型的数据结构
关系:表
元组:表中的一行即为一个元组
属性:表中的一列即为一个属性
码:也称码键,通过码可以唯一确定一个元组(比如仅通过一个学号就可以找到一个具体的学生)
域:域是一组具有相同数据类型的值的集合
分量:元组中的一个属性值
关系模型:对关系的描述
条件:关系的每一个分量必须是一个不可分的数据项
二、关系模型的数据操纵与完整性约束
分类:
- 实体完整性
- 参照完整性
- 用户定义的完整性
三、关系模型的优缺点
优点:
- 关系模型与格式化模型不同,它是建立在严格的数学概念的基础上的
- 关系模型的概念单一,数据结构简单,清晰,用户易懂易用
- 存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作
缺点:
- 存取路径对用户是隐蔽的,查询效率往往不如格式化数据模型
1.3 数据库系统的结构
1.3.1 数据库系统模式的概念
1)型:对某一类数据的结构和属性的说明
2)值:型的一个具体赋值。
3)模式:数据库中全体数据的逻辑结构和特征的描述,它仅仅设计型的描述,不涉及具体的值。
4)实例:模式的一个具体值,反应数据库某一时刻的状态,同一个模式可以有很多实例,实例随数据库中的数据的更新而变动
1.3.2 数据库系统的三级模式结构
一、模式:模式也称逻辑模式(也称概念模式),是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图,一个数据库只有一个模式
二、外模式:外模式也称子模式或用户模式,它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据逻辑表示
三、内模式:内模式也称存储模式,一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。
1.3.3 数据库的二级映像功能与数据独立性
一、外模式/模式映像
外模式描述的是数据的局部结构,保证了数据的逻辑独立性
二、模式/内模式映像
定义了数据全局逻辑结构与存储结构之间的对应关系 ,保证了数据的物理独立性
三、数据的存取由DBMS管理的好处:
1)用户不必考虑存取路径等细节
2)简化了应用程序的编制
3)大大减少了应用程序的维护和修改
1.4 数据库系统的组成
一、硬件平台及数据库
- 要有足够大的内存,存放操作系统、数据库管理系统的核心模块、数据缓冲区和应用程序
- 有足够大的磁盘或磁盘阵列等设备存放数据库,有足够大的磁带(或光盘)作数据备份
- 要求系统又较高的通道能力,以提高数据传送率
二、软件
- 数据库管理系统。数据库管理系统是为数据库的建立、使用和维护配置的系统软件
- 支持数据库管理系统运行的操作系统
- 具有与数据库结构的高级语言及其编译系统,便于开发应用程序
- 以数据库管理系统为核心的应用开发工具
- 为特定应用环境开发的数据库应用系统
三、人员
- 数据库管理员(DBA)
- 系统分析员和数据库设计人员
- 应用程序员
- 用户
(此章部分内容来源于热心网友的分享~)