1. 数据:是数据库中存储的基本对象
数据的定义:描述事物的符号记录
数据的种类: 数字、文字、图形、图像、音频、视频、学生的档案记录等
2.数据库:
数据库的定义:数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据的集合。
数据库的基本特征:数据按一定的数据模型组织、描述和储存 可为各种用户共享 冗余度较小 数据独立性较高 易扩展
3.数据库管理系统:
数据库管理系统定义:(1) 位于用户与操作系统之间的一层数据管理软件
(2)是基础软件,是一个大型复杂的软件系统
数据库管理系统的用途:科学地组织和存储数据、高效地获取和维护数据
数据库管理系统的主要功能 :(1)数据定义功能: 提供数据定义语言(DDL)
定义数据库中的数据对象
(2)数据组织、存储和管理 : 分类组织、存储和管理各种数据
确定组织数据的文件结构和存取方式
实现数据之间的联系
提供多种存取方法提高存取效率
(3) 数据操纵功能: 提供数据操纵语言(DML)
实现对数据库的基本操作 (查询、插入、删除和修改)
(4)数据库的事务管理和运行管理: 数据库在建立、运行和维护时由数据库管理系统统一管理和控制
保证数据的安全性、完整性、多用户对数据的并发使用
发生故障后的系统恢复
(5)数据库的建立和维护功能: 数据库初始数据的装载和转换
数据库转储、恢复功能
数据库的重组织
性能监视、分析等
(6)其它功能: 数据库管理系统与网络中其它软件系统的通信
数据库管理系统系统之间的数据转换
异构数据库之间的互访和互操作
3.数据库系统(Database System,简称DBS)
数据库系统的构成 :
(1)数据库
(2)数据库管理系统(及其应用开发工具)
(3)应用程序
(4)数据库管理员
数据管理定义: 对数据进行分类、组织、编码、存储、检索和维护
数据处理的中心问题
数据管理技术的发展过程 :人工管理阶段(20世纪50年代中之前)
文件系统阶段(20世纪50年代末--60年代中)
数据库系统阶段(20世纪60年代末--现在)
数据管理技术的发展动力: 应用需求的推动
计算机硬件的发展
计算机软件的发展
(1)人工管理阶段特点:一应用程序
数据的共享程度:无共享、冗余度极大
数据的独立性:不数据的管理者:用户(程序员),数据不保存
数据面向的对象:某独立,完全依赖于程序
数据的结构化:无结构
数据控制能力:应用程序自己控制
(2)文件系统阶段特点:数据的管理者:文件系统,数据可长期保存
数据面向的对象:某一应用
数据的共享程度:共享性差、冗余度大
数据的结构化:记录内有结构,整体无结构
数据的独立性:独立性差
数据控制能力:应用程序自己控制
1.数据结构化
数据的整体结构化是数据库的主要特征之一
整体结构化 : 不再仅仅针对某一个应用,而是面向全组织
不仅数据内部结构化,整体是结构化的,数据之间具有联系
数据记录可以变长
数据的最小存取单位是数据项
数据的用数据模型描述,无需应用程序定义
2.数据的共享性高,冗余度低且易扩充
数据面向整个系统,可以被多个用户、多个应用共享使用。
数据共享的好处 : 减少数据冗余,节约存储空间
避免数据之间的不相容性与不一致性
使系统易于扩充
3.数据独立性高
物理独立性: 指用户的应用程序与数据库中数据的物理存储是相互独立的。
当数据的物理存储改变了,应用程序不用改变。
逻辑独立性: 指用户的应用程序与数据库的逻辑结构是相互独立的。
数据的逻辑结构改变了,应用程序不用改变。
数据独立性由数据库管理系统的二级映像功能来保证。
4.数据由数据库管理系统统一管理和控制
数据库管理系统提供的数据控制功能 :
(1)数据的安全性(Security)
保护 保护数据以防止不合法的使用造成的数据的泄密和破坏。
(2)数据的完整性(Integrity)
检查 保证数据的正确性、有效性和相容性。
(3)并发(Concurrency)控制
对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。
(4)数据库恢复(Recovery)
将数据库从错误状态恢复到某一已知的正确状态。
数据模型分为两类: (1)概念模型
(2)逻辑模型和物理模型
层次模型:
层次模型是数据库系统中最早出现的数据模型
层次数据库系统的典型代表是IBM公司的IMS(Information Management System)数据库管理系统
层次模型用树形结构来表示各类实体以及实体间的联系
网状模型:
满足下面两个条件的基本层次联系的集合: 1. 允许一个以上的结点无双亲;
2. 一个结点可以有多于一个的双亲。
表示方法(与层次数据模型相同) 实体型:用记录类型描述
每个结点表示一个记录类型(实体)
属性:用字段描述
每个记录类型可包含若干个字段
联系:用结点之间的连线表示记录类型(实体)之间的一对多的父子联系
网状模型与层次模型的区别 :
网状模型允许多个结点没有双亲结点
网状模型允许结点有多个双亲结点
网状模型允许两个结点之间有多种联系(复合联系)
网状模型可以更直接地描述现实世界
层次模型实际上是网状模型的一个特例
关系模型:
关系数据库系统采用关系模型作为数据的组织方式
1970年美国IBM公司San Jose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型
计算机厂商新推出的数据库管理系统几乎都支持关系模型
关系(Relation): 一个关系对应通常说的一张表
元组(Tuple): 表中的一行即为一个元组
属性(Attribute): 表中的一列即为一个属性,给每一个属性起一个名称即属性名
主码(Key): 也称码键。表中的某个属性组,它可以唯一确定一个元组
域(Domain): 是一组具有相同数据类型的值的集合。属性的取值范围来自某个域。
分量: 元组中的一个属性值。
关系模式: 对关系的描述
关系名(属性1,属性2,…,属性n)
学生(学号,姓名,年龄,性别,系名,年级)
优点: 建立在严格的数学概念的基础上
概念单一 :实体和各类联系都用关系来表示 对数据的检索结果也是关系
关系模型的存取路径对用户透明 :具有更高的数据独立性,更好的安全保密性
简化了程序员的工作和数据库开发建立的工作
缺点 :存取路径对用户透明,查询效率往往不如格式化数据模型 为提高性能,必须对用户的查询请求进行优化,增加了开发数据库管理系统的难度
从数据库应用开发人员角度看,数据库系统通常采用三级模式结构,是数据库系统内部的系统结构
从数据库最终用户角度看,数据库系统的结构分为:
单用户结构
主从式结构
分布式结构
客户-服务器
浏览器-应用服务器/数据库服务器多层结构等
模式(也称逻辑模式): 数据库中全体数据的逻辑结构和特征的描述
所有用户的公共数据视图 一个数据库只有一个模式
模式的地位:是数据库系统模式结构的中间层
与数据的物理存储细节和硬件环境无关
与具体的应用程序、开发工具及高级程序设计语言无关
模式的定义: 数据的逻辑结构(数据项的名字、类型、取值范围等)
数据之间的联系 数据有关的安全性、完整性要求
外模式(也称子模式或用户模式): 数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述
数据库用户的数据视图,是与某一应用有关的数据的逻辑表示
内模式(也称存储模式): 是数据物理结构和存储方式的描述
是数据在数据库内部的表示方式 记录的存储方式(例如,顺序存储,按照B树结构存储,按hash方法存储等)
1.索引的组织方式
2.数据是否压缩存储
3.数据是否加密
4.数据存储记录结构的规定
5.一个数据库只有一个内模式