数据库基本概念
数据
描述事物的符号记录称为数据,数据库存储的最小单元。
数据库
数据库是长期存储于计算机内,有组织,可共享的大量数据的集合。
数据库的结构由数据库的元数据解释,目的是将数据组织起来,以便用户直接从数据中获得信息。
数据模型来组织数据。数据库的共享性是要进行最大限度的共享
数据库元数据包含:
数据结构名称(如:表名、列名)
数据类型(如:字符型、整数型)
数据描述(如:Sname代表学生姓名)
其他描述数据库所存数据特征的信息
数据库管理系统DBMS
数据库管理系统是位于用户与操作系统之间的一层数据管理软件,实现对数据库数据对象的统一管理、控制和维护。
主要功能
数据定义: 数据定义语言DDL,供用户定义数据库的三级模式结构、两级映像以及完整性约束和保密限制等约束。相关信息被存放在数据字典中。
数据操作: 数据操作语言DML,供用户实现对数据的追加、删除、更新、查询等操作。
数据库的运行管理: 并发控制、安全性控制、完整性控制、日志管理、事务管理与恢复。
数据的组织、存储与管理 : 组织、存储和管理各种数据,包括数据字典、用户数据、存取路径等。基本目标是提高存储空间利用率,选择合适的存取方法提高存取效率。
数据库的维护: 包括数据载入、转换、转储、数据库的重组合重构以及性能监控等功能。
通信: 负责数据的传送,DBMS与其他软件系统的通信功能以及数据库之间的互操作功能
数据库系统DBS
三个组成部分:数据库、数据库管理系统和应用程序。
基于计算机系统,目的是在用户和数据库信息之间保证高效的交互。
特点:
数据结构化
数据的共享性高、冗余度低且易扩充
数据独立性高
数据独立性:包括逻辑独立与物理独立,描述了应用程序对数据结构的依赖程度。
物理独立性:应用程序与数据库中的数据的物理结构相互独立
逻辑独立性:应用程序与数据库中的数据的逻辑结构相互独立
数据由数据库管理系统(DBMS)统一管理和控制
数据管理技术
数据处理
数据处理是将数据转换成信息,包括:数据的收集、管理、加工利用、信息输出。
数据管理
数据管理是数据处理的中心问题,包括对数据的分类、组织、编码、存储、检索和维护。
发展过程
人工管理(20世纪50年代中期之前)
文件系统(20世纪50年代后期-60年代中期)
数据库系统(20世纪60年代后期)
结构化、共享性、独立性、管理与控制等方面比较
数据模型
数据模型
模型是对现实世界中复杂对象的模拟与抽象,数据模型是对现实世界中相关实体数据特征的抽象
数据模型是一个描述数据、数据联系、数据语义以及一致性约束的概念工具的集合
数据模型是数据库系统的核心和基础
理解联系
三个世界:现实世界、信息世界和机器世界
抽象的过程是把现实世界中的客观对象抽象为概念模型,再把概念模型转换为某一DBMS支持的数据模型,概念模型是现实世界到机器世界的一个中间层次。
数据模型的三要素
数据结构
与对象的类型、内容、性质有关
与数据之间的联系有关
数据操作
查询,更新(删除,插入,修改)
数据的完整性约束
数据的完整性约束条件是一组完整性规则。完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容
两类数据模型
概念模型
信息世界中的基本概念:实体、属性、码、实体型、实体集、联系
- 实体:客观存在并可相互区别的事物。可以是具体的人、事、物或抽象的概念。
- 属性:实体所具有的某一特性称为属性.一个实体可以由若干个属性来刻画。
- 码:唯一标识实体的属性集。
- 域: 属性的取值范围称为该属性的域。
- 实体型:用实体名及其属性名集合来抽象和刻画同类实体称为实体型。
- 实体集:同一类型实体的集合称为实体集
- 联系:现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。
概念模型: 按用户的观点来对数据和信息建模,即:信息世界的建模。是信息世界的数据模型(建模工具)
常用的概念模型:实体-联系模型(E-R模型),是一种用E-R图描述(抽象)现实世界的概念模型
机器世界的逻辑模型和物理模型(也称结构数据模型)
逻辑模型: 数据库的逻辑结构
物理模型: 描述数据在存储介质上的存储方式和存取方法
常用的结构数据模型
层次模型
满足两个条件的基本层次联系的集合为层次模型:
- 有且只有一个结点没有双亲结点,这个结点称为根结点
- 根以外的其它结点有且只有一个双亲结点
是数据库系统中最早出现的数据模型
用树形结构来表示各类实体以及实体间的联系网状模型
满足下面两个条件的基本层次联系的集合为网状模型: - 允许一个以上的结点无双亲;
- 一个结点可以有多于一个的双亲。
关系模型
关系模型由一组关系组成
每个关系的逻辑结构是一张二维表,它由行(元组)和列(属性)组成。
实体及实体间的联系都用表来表示
相关概念: - 关系:一个关系对应通常说的一张表
- 元组:表中的一行即为一个元组
- 属性:表中的一列即为一个属性(属性名)
- 主码:表中的某个属性组,可以唯一确定一个元组
- 域:属性的取值范围
- 分量:元组中的一个属性值
- 关系模式对关系的描述:
关系名(属性1,属性2,…,属性n)
例如:学生(学号,姓名,年龄,性别,系,年级)
关系模型的数据操作
- 数据操作是集合操作,操作对象和操作结果都是关系
- 操作:查询、插入、删除、更新
- 数据操作是集合操作,操作对象和操作结果都是关系(元组的集合)
- 存取路径对用户隐蔽,只要指出“做什么”,不必详细说明“怎么做”
关系的完整性约束条件
实体完整性,参照完整性,用户定义的完整性
数据库系统的结构
内部结构-三级模式结构
三级模式是对数据的三个抽象级别
模式
数据库整体逻辑结构
外模式
用户的局部逻辑结构
内模式
数据库的物理结构
二级映象
二级映象在数据库管理系统内部实现这三个抽象层次的联系和转换
外模式/模式映像
实现数据的逻辑独立性
模式/内模式映像
实现数据的物理独立性
外部结构-体系结构
从数据库最终用户角度看(数据库系统的体系结构) ,数据库系统的结构分为:
- 单用户结构、主从式结构、分布式结构、客户/服务器
- 浏览器/应用服务器/数据库服务器多层结构等