Oracle数据库第二周
Oracle数据库第二周
1.1数据、信息与数据处理
1.数据
- **数据(Data)**:是数据库中存储的基本对象
- 数据的定义:描述事物的符号记录,是信息的符号表示,或称载体
- 数据的种类:数字、文本、图形、图像、声 :数字、文本、图形、图像、声音、视频、学生的档案记录等
- 信息:数据的内涵,是数据的语义解释
- 数据处理:将数据转换成信息的过程,包括对数据收集、存储、分类、加工、检索、维护等一系列活动
总结:
- 数据是信息的载体 数据是信息的载体
- 数据是信息的表述方式 数据是信息的表述方式
- 信息是从数据而来的 信息是从数据而来的知识
2.数据库
- **数据库(Database,简称 简称DB)**:是长期储存在计算机内、有组织、可共享的大量数据的集合
- 基本特征:
- 数据按一定的数据模型组织、描述和储存
- 以文件方式存储,常见数据库文件扩展名:
- MDF-SQL Server;
- 以文件方式存储,常见数据库文件扩展名:
- MDB-Access;
- 数据按一定的数据模型组织、描述和储存
1 | - DBC-VFP(Visual FoxPro) |
- 可为各种用户共享
- 冗余度较小
- 数据独立性较高
- 易扩展
3.数据库管理系统
- **数据库管理系统( 数据库管理系统(Database Management System,
简称 简称DBMS) ** - 管理数据库的 管理数据库的系统软件 系统软件,是数据库系统的核心
- 位于用户与操作系统之间的一层数据管理软件
- 主要功能:
- 数据定义功能(DDL)
- 数据操纵功能(DML):CRUD
- 数据库的事务管理和运行管理
- 数据库的建立和维护功能
1.2数据管理技术的发展
新一代数据库
- 面向对象的数据库
- 分布式数据库
- 并行数据库
- 图形图像数据库
主流数据库:
Oracle公司:Oracle、MySQL(开源)
Microsoft公司:Microsoft SQL Server
MySQL分支:MariaDB(开源)
参考链接:
1.3数据库系统的组成
数据库系统
1.4模型
根据应用目的,模型分为两个层次:
概念模型
- 按用户的观点,独立于计算机实现的,只用来描述和组织所关心的信息结构的概念数据模型,强调语义
- 数据库设计人员和用户之间进行交流的语言
- 对应于信息世界
- 概念模型用于信息世界的建模;
- 是现实世界到机器世界的第一层抽象;
- 是数据库设计的有力工具;
- 数据库设计人员和用户之间进行交流的语言;
数据模型
- 按计算机系统的观点,直接面向计算机系统的,描述数据库中数据的逻辑结构的基本数据模型
- 对应于数据世界(机器世界)
- 包括逻辑模型和物理模型
- 逻辑模型:采用某一数据模型组织数据,如关系模型。
- 物理模型:描述数据在系统内部的表示方式和存取方法
- 用来形式化描述
- 数据
- 数据之间的联系
- 数据语义和约束规则
数据模型的组成要素
- 数据结构
- 数据结构的概念
- 描述数据库的组成对象,以及对象之间的联系
- 数据结构描述的内容
- 对象的数据类型、内容、性质,如关系模型中的属性
- 与数据之间联系有关的对象
- 数据结构的概念
- 数据操作
- 对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则,是对系统动态特性的描述
- 数据操作的类型
- 查询
- 更新(包括插入、删除、修改)
- 数据的完整性约束
- 一组完整性规则的集合。
- 完整性规则:给定的数据模型中数据及其联系所具有的制约和依存规则
- 用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。
- 最常用的数据模型
- 非关系模型
- 层次模型(Hierarchical Model)
- 层次模型是数据库系统中最早出现的数据模型
- 层次数据库系统的典型代表是IBM公司1968年推出的IMS(Information Management System)数据库管理系统
- 层次模型用树形结构来表示各类实体以及实体间的联系
- 通过 通过树形结构表示实体及联系。如描述学校管理 形结构表示实体及联系。如描述学校管理机构。个 机构。每个结点 结点表示一个 表示一个实体(型) 实体(型),箭头表示 箭头表示实体(型)间的联系(由父到子)。
- 主要特点:
- 有且仅有一个根结点;每个非根结点 非根结点有且仅有一个父(直接上层)结点。它最适合表示实体的一对多联系。
- 网状模型(Network Model)
- 典型代表是DBTG系统:
- 70年代由DBTG提出的一个系统方案
- 奠定了数据库系统的基本概念、方法和技术
- 实际系统
- Cullinet Software Inc.公司的IDMS
- Univac公司的DMS1100
- Honeywell公司的IDS/2
- HP公司的IMAGE
- 通过网状结构 网状结构表示实体及联系。“网”中每个结点表示一个实体(型),结点之间箭头表示实体(型)间的联系。
- 网状数据模型主要特点:网状数据模型可能有多个根结点,某些非根结点可能有多个父结点,适合表示实体的多对多联系。
- 特点:
- 适合复杂的关系
- 最少的数据冗余
- 算法复杂、专用
- 优点 优点:能直观、形象地描述实体及其联系,易于被人们所理解和掌握 。
- 缺点 缺点:数据结构较复杂,存储数据需要更多的链接指针;在检索数据时,需要考虑数据的存储路径;在插入或删除数据时,涉及到调整链接指针
- 典型代表是DBTG系统:
- 关系模型(Relational Model)
- 1970年美国IBM公司San Jose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型
- 关系数据结构:规范化的二维表 二维表(关系)
- 一个关系就是没有重复行和重复列的二维表,二维表的每一行在关系中称为元组,每一列在关系中称为属性。学生关系的每一行代表一个学生的记录,每一列代表学生记录的一个字段。属性个数(n)称为关系的元。
- 关系模型的组成
- 关系数据结构
- 单一的数据结构—-关系
- 现实世界的实体以及实体间的各种联系均用关系来表示
- 数据的逻辑结构—-二维表
- 从用户角度,关系模型中数据的逻辑结构是一张二维表。
- 单一的数据结构—-关系
- 关系操作集合
- 插入、删除、修改、查询(选择、投影、连接、除、并、交、差
- 关系完整性约束
- 实体完整性、参照完整性、域完整性、用户定义完整性
- 关系数据结构
- 关系数据库就是一些相关的二维表和其他数据库对象的集合。
- 在这个定义中明确,关系数据库中的所有信息都存储在二维表格中;一个关系数据库可能包含多个表;除了这种二维表外,关系数据库还包含一些其他对象,如视图等。
- 概念
- 关系
- 是一张二维表,通常将一个无重复行、重复列的二维表看成一个关系,每个关系都有一个关系名。
- 元组
- 二维表的每一行在关系中称为元组。描述了现实世界中的一个实体或不同实体间的一种联系。
- 属性
- 二维表的每一列在关系中称为属性,每个属性都有一个属性名,各个属性的取值称为属性值。每个属性有一定的取值范围,称为值域。
- 域 (Domain)
- 关系中每个属性的值是有一定变化范围,每一个属性所对应的变化范围叫做属性的变域或简称域,它是属性值的集合,关系中所有属性的实际取值必须来自于它对应的域。
- 分量
- 一个元组在一个属性域上的取值称为该元组在此属性上的分量。
- 关系模式
- 二维表的表头那一行称为关系模式 关系模式,即一个关系的关系名及其全部属性名的集合。关系模式是概念模型中实体型及实体型之间联系的数据模型表示。
- 一般表示为:关系名(属性名1,属性名2 ,……,属性名n)
- 关系模式指出了一个关系的结构;而关系则是由满足关系模式结构的元组构成的集合。关系模式是稳定的、静态的,而关系则是随时间变化的、动态的。
- 候选码
- 若关系中的某一属性或属性组合的值能唯一地标识一个元组,则称该属性组为候选码
- 在最简单的情况下,候选码只包含一个属性。
- 在最极端的情况下,关系模式的所有属性组是这个关系模式的候选码,称为全码(All-key)
- 主码(主键)(Primary key)
- 若一个关系有多个候选码,则选定其中一个为主码(Primary key)
- 主码的各个属性称为主属性(Prime attribute)
- 不包含在任何侯选码中的属性称为非主属性(Non-key attribute)
- 外码(外键)(Foreign Key)
- 如果关系中某个属性或属性组合并非码,但却是另一个关系的主码,则称此属性或属性组合为本关系的外码或外键(Foreign Key)。在关系数据库中,用外码表示两个表间的联系。
- 关系
- 基本特征
- 有坚实的理论基础 (关系代数)
- 几个元素组成的一个有序组称为一个元组,通常元组是用圆括号括起来的一些元素表示,元素间使用逗号分隔。 例如 (E001,钱达理,男,东风路78号)是元组的例子。
- 在关系数据库中,可以把一个表的每一行看作一个元组。
- 数据结构简单、易于理解
- 对用户提供了较全面的操作支持
- 得到了众多开发商的支持
- 有坚实的理论基础 (关系代数)
1.5数据库系统结构
概念模型的一种表示方法
- 数据库系统内部结构
- 从数据库管理系统角度看,数据库系统通常采用三级模式结构,是数据库系统内部的系统结构
- 数据库系统外部结构
- 从数据库最终用户角度看,数据库系统的结构分为:单用户结构;客户/服务器结构;浏览器/应用服务器/数据库服务器多层结构等。
数据库系统的三级模式结构
为了有效地组织、管理数据,提高数据库的逻辑独立性和物理独立性,人们为数据库设计了一个严谨的体系结构,数据库领域公认的标准结构是三级模式结构,即外模式、模式和内模式 。
根据各类人员与数据库的不同关系,可把视图分为三种
- 对应于用户的外部视图
- 对应于应用程序员的概念视图
- 对应于系统程序员的内部视图
模式(Schema,也称逻辑模式)
数据库中全体数据的逻辑结构和特征的描述
所有用户的公共数据视图,综合了所有用户的需求
一个数据库只有一个模式
模式的地位
:是数据库系统模式结构的中间层
- 与数据的物理存储细节和硬件环境无关
- 与具体的应用程序、开发工具及高级程序设计语言无关
外模式
- 也称子模式或用户模式
- 数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述
- 数据库用户的数据视图,是与某一应用有关的数据的逻辑表示
- 外模式的地位:介于模式与应用之间
- 外模式与应用的关系:
- 同一外模式也可以为多个应用系统所使用
- 但一个应用程序只能使用一个外模式
- 模式与外模式的关系:
- 外模式通常是模式的子集
- 一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求
内模式
- 是数据物理结构和存储方式的描述
- 是数据在数据库内部的表示方式
- 记录的存储方式(顺序存储,按照B树结构存储)
- 索引的组织方式
- 数据是否压缩存储
- 数据是否加密
- 一个数据库只有一个内模式
数据库的两级映像
- 三级模式是对数据的三个抽象级别
- 二级映象在DBMS内部实现这三个抽象层次的联系和转换
- 外模式\模式映像
- 保证数据的逻辑独立性
- 同一个模式可以有任意多个外模式,外模式/模式映象,定义外模式与模式之间的对应关系; 当模式改变时,外模式/模式映象使外模式保持不变;
- 应用程序是依据数据的外模式编写的,从而不必修改应用程序,保证了数据与程序的逻辑独立性
- 模式/内模式映象
- 保证数据的物理独立性。
- 模式/内模式映象定义了数据全局逻辑结构 全局逻辑结构与存储结构 储结构之间的对应关系。
- 当数据库的存储结构改变了,模式/内模式映象使模式保持不变。
- 应用程序不受影响。保证了数据与程序的物理独立性
- 数据库系统外部结构
- 从数据库最终用户角度看(数据库系统外部的体系结构) ,数据库系统的结构分为:
- 单用户数据库系统
- 整个数据库系统(应用程序、DBMS、数据)装在一台计算机上,为一个用户独占,不同机器之间不能共享数据。
- 集中式结构
- 客户/服务器
- 浏览器/应用服务器/数据库服务器多层结构等
- 单用户数据库系统
- 从数据库最终用户角度看(数据库系统外部的体系结构) ,数据库系统的结构分为:
小结
- 数据管理的发展过程
- 数据库系统的组成
- 数据模型
- 数据模型的三要素
- 概念模型, E-R模型
- 三种主要数据模型
- 数据库系统结构
- 数据库系统三级模式结构
- 数据库系统两级映像系统结构