Oreacle概述
数据库的4个基本概念
- 数据(Data)
- 数据库(Database)
- 数据库管理系统(DBMS)
- 数据库系统(DBS)
数据
- 数据是数据库中存储的基本对象
- 数据的定义:描述事物的符号记录
- 数据的种类:数字、文字、图形、图像、音频、视频、学生的档案记录等
- 数据的含义称为数据的语义,数据与其语义是不可分的
数据库
- 数据库的定义是长期存储在计算机内,有组织的,可共享的大量数据的集合。
- 数据库的基本特征:
- 数据按一定的数据模型组织、描述和存储
- 可为各种用户共享
- 冗余度较小
- 数据独立性较高
- 易扩展
数据库管理系统
- 什么是数据库管理系统
- 位于操作系统和用户之间的一层 数据库管理软件
- 是基础软件,是一个大型复杂的软件系统
- 数据库管理系统的用途
- 科学地组织和存储数据、高效地获取和维护数据
- 数据库在计算机系统中的位置
- 数据库管理系统的主要功能
- 数据定义功能
- 提供数据定义语言(DDL)
- 定义数据库中的数据对象
- 数据组织、存储和管理
- 分类组织、存储和管理各种数据
- 确定组织数据的文件结构和存取方式
- 确定数据之间的联系
- 提供多种存取提高存取效率
- 数据操纵功能
- 提供数据操纵的语言(DML)
- 实现对数据库的基本操作(查询、插入、删除、修改)
- 数据库的事务管理和运行管理
- 数据库在简历、运行和维护时由数据库管理系统统一管理和控制
- 保证数据的安全性和完整性、多用户对数据的并发使用
- 发生故障后的系统修复
- 数据库的建立和维护功能
- 数据库初始数据的装载和转换
- 数据库转储、恢复功能
- 数据库的重组织
- 性能监视和分析等
- 其他功能
- 数据库管理系统与网络中的其他软件的通信
- 数据库管理系统之间的数据转换
- 异构数据库之间的互访和互操作
数据库系统
- 数据库系统的构成
- 数据库
- 数据库管理系统(及其应用开发工具)
- 应用程序
- 数据库管理员
- 数据库系统的特点
- 数据结构化
- 数据库的整体结构化是数据库的主要特征之一
- 数据的最小存取单位是数据项
- 数据记录可以变长
- 数据之间具有联系
- 数据的共享性高,冗余度低且易扩充
- 数据共享减少数据的冗余,节约存储空间
- 避免数据之间的不相容性和不一致性
- 数据独立性高
- 物理独立性:用户的应用程序与数据库中数据的物理存储时相互独立的,当数据的物理存储改变了,应用程序不用改变。
- 逻辑独立性:用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变了,应用程序不用改变。
- 数据由数据库管理系统统一管理和控制
- 数据的安全性保护
- 数据的完整性检查
- 并发控制
- 数据库恢复
- 数据管理
- 数据管理时对数据进行分类、组织、编码、存储、检索和维护
- 数据管理时数据处理的中心问题
- 数据管理技术的发展过程
- 人工管理阶段
- 文件系统阶段
- 数据库系统阶段
数据模型
数据模型的概念
- 数据模型是对现实数据特征的抽象(现实世界的模拟)
- 数据模型满足的三方面要求
- 能够比较真实地模拟现实世界
- 容易为人所理解
- 便于在计算机上实现
- 数据模型是数据库系统的核心和基础
数据模型的分类
- 概念模型(信息模型)是按用户的观点来对数据和信息建模,用于数据库设计
- 逻辑模型和物理模型
- 逻辑模型主要包括网状模型、层次模型、关系模型、面向对象数据模型、对象关系数据模型、半结构化数据模型等。按计算机系统的观点对数据建模,用于DBMS实现。
- 物理模型是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方式,在磁盘或磁带上的存储方式和存取方式。
- 客观对象的抽象过程—两步抽象
- 现实世界中的客观对象抽象为概念模型(将现实世界抽象为信息世界);
- 把概念模型转化为数据库管理系统支持的数据模型(将信息世界转换为机器世界);
- 概念模型的一种表示方式:实体-联系方法
- 实体:客观存在并可以相互区别的事物称为实体。可以是具体的人、事、物体或抽象的概念。
- 属性:实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。
- 码:唯一标识实体的属性集称为码。
- 实体型:用实体名及其属性名集合来抽象和刻画同类实体称为实体型。
- 实体集:同一类实体的集合称为实体集。
- 联系:现实世界中的事物内部以及事物之间的联系在信息世界中反应为实体(型)内部的联系和实体(型)之间的联系。
- 实体内部的联系通常指组成实体的各属性之间的联系。
- 实体之间的联系通常指不同实体集之间的联系。
- 实体之间的联系有一对一,一对多和多对多等多种类型。
- 实体-联系方法(Entity-Relationship Approach)
- 用E-R图来描述现实世界的概念模型
- E-R图方法也称为E-R图模型
- E-R图示例
数据操作
- 数据操作的类型
- 查询
- 更新:插入、删除、修改
- 数据的完整性约束条件
- 一组完整性规则的集合
- 完整性规则:给定的数据模型中数据及其所联系所具有的制约和依存规则
- 用以限定符合数据模型的数据库状态及其状态的变化,以确保数据的正确、有效和相容
- 数据模型对完整性约束条件的定义:
- 反应和规定必须遵守的基本通用的完整性约束条件
- 提供定义完整性约束条件的机制,以反应具体应用设计的数据必须遵守的特定的语义约束条件。
常用的数据模型
- 层次模型
- 层次模型使用树形结构来表示各类实体及实体间的联系
- 数据库中最早出现的数据模型
- 满足下面两个条件的基本层次联系的集合为层次模型
- 有且只有一个节点没有双亲节点,该节点称为根结点
- 根以外的其它节点有且只有一个双亲结点
- 层次模型的几个术语:根结点、双亲结点、兄弟结点、叶结点
- 层次模型的特点:
- 结点的双亲是唯一的是wei
- 只能直接处理一对多的实体联系
- 每个记录类型可以定义一个排序字段,也称为码字段z码字段字段,也称为字段
- 任何记录值只有按照其路径查看时,才能显出它的全部意义
- 没有一个子女记录值能够脱离双亲记录值而独立存在
- 层次模型的完整性约束条件:
- 无相应的双亲结点值就不能插入子女结点值
- 如果删除双亲结点值,则相应的子女结点值也被同时删除
- 更新操作时,应更新所有相应记录,以保证数据的一致性
graph TD R1[根结点R1] --> R2[兄弟结点R2] -->R4[叶结点R4] R1 --> R3[叶结点R3] R2 --> R5[叶结点R5]
- 网状模型
- 网状数据库采用网状模型作为数据的组织方式
- 满足下面两个条件的基本层次联系的集合
- 允许一个以上的结点无双亲
- 一个结点可以有多个双亲
- 网状模型中女子结点与双亲结点的联系可以不唯一
- 要为每个联系命名,并指出与该联系有关的双亲记录和子女记录
- 网状模型的优点和缺点
- 优点
- 能够更为直接地描述现实世界,如一个结点可以有多个双亲
- 具有良好的性能,存取效率高
- 缺点:
- 结构较为复杂,随着应用环境的扩大,数据库的结构变得复杂,不利于最终用户掌握DDL,DML语言复杂,用户不易使用
- 记录之间联系通过存取路径实现,用户必须了解系统结构的细节
- 网状模型示例
graph TD R1 -->|R1与R3的联系L1| R3 R2 -->|R2与R3的联系L2| R3
- 关系模型
- 关系数据库系统采用关系模型作为数据的组织方式
- 在用户观点下,关系模型中的数据的逻辑结构时一张二维表,由行和列组成
- 关系(Relation):一个关系对应通常为一张表。
- 元组(Tuple):表中一行为一个元组。一条记录。
- 属性(Attribute):表中的一列为一个属性,给每一个属性起一个名称即为属性名。
- 主码(Key):码键。表中的某个属性组,它可以时唯一确定一个元组。
- 域(Domain):是一组具有相同数据类型的值的集合。属性的取值范围来自某一个域。
- 分量:元组中的一个属性值。
- 关系模式:对关系的描述。关系名(属性1,属性2,…,属性n)
- 关系必须是规范的,满足一定的规范条件。最基本的规范条件:关系的每一个分量必须是一个不可分的数据项,不允许表中还有表。
- 关系的完整性约束条件:
- 实体完整性
- 参照完整性
- 用户定义的完整性
- 面向对象数据模型
- 对象关系数据模型
- 半结构化数据模型
