1.1 数据库系统概述
1.1.1 四个基本概念
一、数据
数据(Data)是数据库中存储的基本对象
数据的定义:描述事物的符号记录
数据的种类:文本、图形、图像、音频、视频、学生的档案记录、货物的运输情况等
数据的特点:数据与其语义是不可分的
数据举例
数据的含义称为数据的语义,数据与其语义是不可分的。
例如 93是一个数据
语义1:学生某门课的成绩
语义2:某人的体重
语义3:计算机系2015级学生人数
语义4:请同学给出。。。
学生档案中的学生记录
(李明,男,199705,江苏南京市,计算机系,2015)
语义:学生姓名、性别、出生年月、籍贯、所在院系、入学时间
解释:李明是个大学生,1997年5月出生,江苏南京市人,2015年考入计算机系
二、数据库
数据库的定义
数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据的集合。
数据库的基本特征
数据按一定的数据模型组织、描述和储存
可为各种用户共享
冗余度较小
数据独立性较高
易扩展
三、数据库管理系统
什么是DBMS
位于用户与操作系统之间的一层数据管理软件,是基础软件,是一个大型复杂的软件系统
DBMS的用途
科学地组织和存储数据、高效地获取和维护数据
数据库在计算机系统中的位置
DBMS的主要功能
数据定义功能
- 提供数据定义语言(DDL)
- 定义数据库中的数据对象
数据组织、存储和管理
- 分类组织、存储和管理各种数据
- 确定组织数据的文件结构和存取方式
- 实现数据之间的联系
- 提供多种存取方法提高存取效率
数据操纵功能
- 提供数据操纵语言(DML)
- 实现对数据库的基本操作 (查询、插入、删除和修改)
数据库的事务管理和运行管理
- 数据库在建立、运行和维护时由DBMS统一管理和控制
- 保证数据的安全性、完整性、多用户对数据的并发使用
- 发生故障后的系统恢复
DBMS的主要功能
数据库的建立和维护功能(实用程序)
- 数据库初始数据装载转换
- 数据库转储
- 介质故障恢复
- 数据库的重组织
- 性能监视分析等
其它功能
- DBMS与网络中其它软件系统的通信
- 两个DBMS系统的数据转换
- 异构数据库之间的互访和互操作
四、数据库系统
什么是数据库系统(Database System,简称DBS)
在计算机系统中引入数据库后的系统构成
数据库系统的构成:数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员
数据库系统在计算机系统中的位置图示
1.1.2 数据管理技术的产生和发展
什么是数据管理
对数据进行分类、组织、编码、存储、检索和维护
数据处理的中心问题
数据管理技术的发展过程
人工管理阶段(20世纪40年代中–50年代中)
文件系统阶段(20世纪50年代末–60年代中)
数据库系统阶段(20世纪60年代末–现在)
数据管理技术的发展动力
应用需求的推动
计算机硬件的发展
计算机软件的发展
一、人工管理阶段
时期
20世纪40年代中–50年代中
产生的背景
应用需求 科学计算
硬件水平 无直接存取存储设备
软件水平 没有操作系统
处理方式 批处理
特点
数据的管理者:用户(程序员),数据不保存
数据面向的对象:某一应用程序
数据的共享程度:无共享、冗余度极大
数据的独立性:不独立,完全依赖于程序
数据的结构化:无结构
数据控制能力:应用程序自己控制
应用程序与数据的对应关系(人工管理阶段)
二、文件系统阶段
时期
20世纪50年代末–60年代中
产生的背景
应用需求 科学计算、管理
硬件水平 磁盘、磁鼓
软件水平 有文件系统
处理方式 联机实时处理、批处理
特点
数据的管理者:文件系统,数据可长期保存
数据面向的对象:某一应用程序
数据的共享程度:共享性差、冗余度大
数据的结构化:记录内有结构,整体无结构
数据的独立性:独立性差,数据的逻辑结构改变必须 修改应用程序
数据控制能力:应用程序自己控制
应用程序与数据的对应关系(文件系统阶段)
文件系统中数据的结构
记录内有结构。
数据的结构是靠程序定义和解释的。
数据只能是定长的。
可以间接实现数据变长要求,但访问相应数据的应用程序复杂了。
文件间是独立的,因此数据整体无结构。
可以间接实现数据整体的有结构,但必须在应用程序中描述数据间的联系。
数据的最小存取单位是记录。
三、数据库系统阶段
时期
20世纪60年代末以来
产生的背景
应用背景 大规模管理
硬件背景 大容量磁盘、磁盘阵列
软件背景 有数据库管理系统
处理方式 联机实时处理,分布处理,批处理
一个例子
学生的信息包括学号、姓名、性别、年龄、专业和奖励
用文件系统实现学籍管理
数据存储
定长记录 存储在“学生基本信息”文件中
变长记录 存放在另一个”奖励”文件
“学生基本信息”表中的位置和长度描述“奖励”文件中记录的开始位置和长度
查询数据
编写应用程序,实现数据的录入和查找
缺点:程序员必须关注记录结构和不同文件中记录之间的联系,工作量大,编程复杂,开发速度慢
数据库系统管理
存储数据
建立两张表:
STUDENT表-存放学生的基本信息,
AWARD表-存放学生的奖励情况
使用两条插入命令 完成学生基本信息和奖励情况的数据录入功能
查询功能
可以用一条查询语句实现
1.1.3 数据库系统的特点
数据结构化
数据的共享性高,冗余度低,易扩充
数据独立性高
数据由DBMS统一管理和控制
数据结构化
整体数据的结构化是数据库的主要特征之一
整体结构化
不再仅仅针对某一个应用,而是面向全组织
不仅数据内部结构化,整体是结构化的,数据之间具有联系
数据库中实现的是数据的真正结构化
数据的结构用数据模型描述,无需程序定义和解释
数据可以变长
数据的最小存取单位是数据项
数据的共享性高,冗余度低,易扩充
数据库系统从整体角度看待和描述数据,数据面向整个系统,可以被多个用户、多个应用共享使用。
数据共享的好处
减少数据冗余,节约存储空间
避免数据之间的不相容性与不一致性
使系统易于扩充
数据独立性高
物理独立性
指用户的应用程序与存储在磁盘上的数据库中数据是相互独