目录
1.1 数据库系统概述
1.1.1四个基本概念
1)数据
2)数据库
3)数据库管理系统:系统软件,和操作系统一样是基础软件
4)数据库系统:数据库+数据库管理系统+应用程序+数据库管理员
1.1.2产生和发展
1)人工管理阶段
2)文件系统阶段
3)数据库系统阶段
1.1.3数据库系统的特点
1)数据结构化:数据库系统实现整体数据的结构化,这是数据库系统和文件系统的本质区别。所谓“整体”结构化是指数据库中的数据不再仅仅针对某一应用,而是面对整个组织或企业;不仅数据内部是结构化的,而且整体是结构化的,数据之间是具有联系的。
2)数据的共享性高、冗余度底且易扩充
3)数据独立性高
4)数据由数据库管理系统统一管理和控制:数据的安全性保护、数据的完整性检查、并发控制、数据库恢复。
1.2 数据模型—数据模型是数据库系统的核心和基础
1.2.1两类数据模型
数据模型—比较真实地模拟现实世界、容易为人理解、便于在计算机上实现。
1)概念模型/信息模型
2)逻辑模型和物理模型
1.2.2概念模型
1)信息世界中的基本概念
实体、属性、码(唯一标识始体的属性集)、实体型(实体+属性)、实体集(某一类实体的全部)、联系。
Eg:一个学生、一个学生的学号性别姓名出生年月、一个学生的学号、学生(学号性别姓名出生年月)、全部学生、。。
2)概念模型的一种表示方法—实体-联系方法,E-R图。
1.2.3数据模型的组成要素
1)数据结构
2)数据操作
3)数据的完整性约束条件
1.2.4常用的数据模型
层次模型、网状模型、关系模型、面向对象数据模型、对象关系数据模型、半结构化数据模型。
其中,层次模型和网状模型是格式化模型。
1.2.5层次模型—树
1)数据结构
基本特点:任何一个给定的记录值只能按其层次路径查看,没有一个子女记录值能够脱离其双亲记录值而独立存在。
2)数据操作和完整性约束条件
操作:查询、插入、删除、更新
完整性约束条件:插入时,没有双亲就不能插入子女结点;删除时,删除双亲子女也没了。
3)层次模型的优缺点
优点:结构简单清晰、查询效率高、提供了良好的完整性支持。
缺点:现实世界很多联系并非是层次性的、当一个结点有多个双亲就很笨拙会冗余、查询子女必须通过双亲、由于结构紧密使得层次命令趋于程序化。
1.2.6网状模型
1)数据结构—允许一个以上的结点没有双亲+一个结点可以有多个双亲
2)数据操作和完整性约束条件
没有层次模型那么严格的完整性约束,但具体的网状数据库系统对数据操作都加了一些限制,提供了一定的完整性约束。
3)优缺点
优点:更为直接地描述现实世界、具有良好的性能存取效率较高
缺点:结构复杂、DDLDML复杂且要嵌入高级语言用户不易掌握、用户要了解系统结构的细节才能更好地存取。
1.2.7关系模型
1)数据结构
关系:一个关系通常指一张表
元组:表中的一行
属性:表中的一列
码:某一属性组,唯一
域:一组具有相同数据类型的值的集合,如人的年龄1~120、学生性别为男和女
分量:元组中的一个属性值
关系模式:对关系的描述,一般表示为:关系名(属性1、属性2…),如:学生(学号、姓名…)
2)数据操作和完整性约束条件
数据操作:查询、插入、删除、更新数据
关系的完整性约束:
①实体完整性
②参照完整性
③用户定义的完整性
关系模型中的数据操作是集合操作,操作对象和操作结果都是关系,即若干元组的集合,而不像格式化模型中那样是单记录的操作方式。另一方面,关系模型把存取路径向用户隐蔽起来,用户只要指出“干什么“或”找什么“,不必详细说明”怎么干“或”怎么找“,从而大大提高了数据的独立性,提高了用户的生产率。
优缺点
优点:
①和格式化模型不同,是建立在严格的数字概念的基础上。
②关系模型的概念单一。
③关系模型的存取路径对用户隐蔽,从而有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。
缺点:当然,因为存取路径对用户隐蔽,查询效率往往不如格式化模型。
1.3数据库系统的结构
1.3.1数据库系统模式的概念
1)型type:对某一类数据的结构和属性说明
2)值value:对型的一个具体赋值
3)模式schema:数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及型的描述,不涉及具体的值。模式的一个具体值成为模式的一个实例,可以有很多实例。Schema是相对稳定的,而实例instance是变动的。
1.3.2数据库系统的三级模式结构-外模式、模式、内模式
1)模式schema
也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。一个数据库只有一个模式。
数据库管理系统提供模式数据定义语言(模式DDL)来严格地定义模式。
2)外模式external schema
也称子模式或用户模式,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。通常是模式的子集,可以有多个。
3)内模式internal schema
也称存储模式,数据库只有一个内模式,它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。
1.3.3数据库的二级映像功能和数据独立性
数据库系统的三级模式结构是数据的三个抽象级别,而具体的物理组织形式不需要用户管。实现这之间的连接是通过这两层映像:外模式/模式映像 和 模式/内模式映像。
1)外模式/模式映像
2)模式/内模式映像
1.4数据库系统的组成
1.4.1硬件平台及数据库
1)足够大的内存
2)足够大的磁盘或磁盘阵列等外部设备
3)较高的通道能力,提高数据传送率
1.4.2软件
1)数据库管理系统
2)支持数据库管理系统运行的操作系统
3)与数据库接口的高级语言及其编译系统
4)以数据库管理系统为核心的应用开发工具
5)为特定应用环境开发的数据库应用系统
1.4.3人员
1)数据库管理员
①参与确定数据库中的信息内容和结构
②参与数据库的存储结构和存取策略的设计
③参与确定数据安全性要求和完整性约束条件
④监控数据库的使用和运行
⑤数据库的改进和重组
2)系统分析员和数据库设计人员
3)应用程序员
4)最终用户:偶然用户、简单用户、复杂用户