数据库原理与应用第一章笔记整理
第一章 绪论
本章的重点在于系统性地阐述了一系列基础概念;其中对数据模型的三个关键组成部分进行了深入探讨,并详细分析了数据库系统的三层架构及其内外模式映像体系;特别强调了数据库系统在物理层面与逻辑层面的独立性;通过本章的学习,读者能够系统地掌握相关基础知识。
这一章将详细阐述四个章节的内容。
数据库系统概述部分将介绍其基本概念。
数据模型部分将探讨其核心框架。
数据库系统结构详细阐述将展示其组织形式。
其组成架构也将被深入分析。
1.1 数据库系统概述
1.1.1四个概念
1.数据(Data)
- 定义:代表数据库中存储的基本数据对象。
 - 特点:数据与其所承载的意义不可分割。
学生成档时的学生信息记录
(李明男1991年5月江苏南京市计算机系2010级)
语义项包括学号姓名性别出生年月日籍贯以及入学院系等信息项。 
2.数据库(Database)(常考)
- 定义:是长时间存储于计算机内部且具有有序组织方式的大规模数据集合,并且具备便于共享的特点。
 - 基本特征:
按照预先建立的数据模型进行组织、分类以及存储过程;
该系统能够允许不同类型的用户方便地访问相关资源;
通过减少冗余信息来提高存储效率;
确保各个数据模块之间相互独立;
具备良好的扩展性特点 
3.数据库管理系统(DBMS)
- 定义:介于应用程序与操作系统的中间层次的数据管理软件。
- 主要功能:
- 数据建模能力;
 - 数据组织、存储与管理能力;
 - 事务处理能力;
 - 系统构建与维护能力(辅助工具);
 - 其他支持能力。
 
 
 - 主要功能:
 
4.数据库系统(DBS)
定义:在计算机系统中引入数据库后的系统构成。
构成:数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员

1.1.2 数据管理技术的产生和发展
人工管理阶段(20世纪40年代中–50年代中)
文件系统阶段(20世纪50年代末–60年代中)
数据库系统阶段(20世纪60年代末–现在)
高级数据库阶段
1.1.3 数据库系统的特点
- 
数据规范化
- 数据互操作性高、重复率低且具备良好的可扩展性
高互操作性特性有助于降低数据重复率,在存储空间上实现有效的节约;同时通过消除数据间的不兼容性和不一致性问题, 提升系统的整体兼容性和稳定性, 确保系统具备良好的扩展性 
 - 数据互操作性高、重复率低且具备良好的可扩展性
 - 
数据独立性高
 
- 物理独立性:指应用程序与存储在磁盘上的数据库中的数据相互物理上是独立的。当数据存储的位置发生变化时,应用程序无需进行任何修改。
 - 逻辑独立性:指应用程序与数据库的逻辑结构相互独立,即使数据库的逻辑结构发生变化,应用程序也可以相应地进行调整以适应新的结构。
 
- 数据由DBMS统一管理和控制。
 
1.2 数据模型
1.2.1 两大类数据模型
- (1) 概念模型(信息建模方案):它是一种基于业务视角对数据和信息进行抽象结构化表示的设计方案, 用于指导数据库的设计过程。
- (2) 逻辑模型与物理存储架构
逻辑模型主要包含网状架构、分层架构、关系型架构以及面向对象架构等多种类型, 从计算机系统的设计角度来看待数据组织, 并由数据库管理系统(DBMS)实现相关的功能;物理存储架构则关注着数据在底层存储介质中的表示方式, 具体来说,则是定义了数据在系统内部的表现形式及其访问机制;同时决定了其在磁介质上的存储格式以及访问流程。 
 - (2) 逻辑模型与物理存储架构
 
1.2.2 数据模型的组成要素 (常考)
阐述构成数据库的基本元素及其相互关联,并旨在刻画系统的静态特征
数据操作
对数据库中各种对象(型)的实例值进行支持执行的操作行为及其相关的操作规则包括:查询(支持查询操作)、更新(包含插入、删除和修改三种类型)。这部分用于描述系统动态特性的部分。
- 完整性约束 *
遵循完整性的规范的整体结构中遵循完整性的规范:给定的数据模型中数据及其联系所具有的限制与存储。 
1.2.3 概念模型
(1) 实体(Entity):存在的物体或能够区分的对象被称为实体。它既可以指代具体的个体(如人、物),也可以涵盖抽象的概念(如理论)。
(2) 属性(Attribute)即为实体所具有的某种特性。由此可知一个实体通常由多个属性共同描述
(3)码(Key):唯一标识实体的属性集称为码
(4)域(Domain):属性的取值范围称为该属性的域
(5) 实体型(Entity Type):通过实体名及其属性名集合能够抽象出其属性特征并进行分类归纳即称为 实体 型
(6)实体集(Entity Set):同一类型实体的集合称为实体集
关联(Association):现实世界中各对象及其相互关系在信息世界中表现为实体内部的关联与对象间的关联。主要包含:对象内部关联与对象间关联。
    两个实体型之间的这三类联系
一对一联系(1:1)
      实例:一个班级只有一个正班长,一个班长只在一个班中任职
 一对多联系(1:n)
      实例:一个班级中有若干名学生,每个学生只在一个班级中学习
多对多联系(m:n)
      实例: 课程与学生之间的联系:一门课程同时有若干个学生选修一个学生可以同时选修多门课程
    
    概念模型的一种表示方法——E-R方法
实体型——用矩形表示,矩形框内写明实体名。
属性——用椭圆形表示,并用无向边将其与相应的实体连接起来
联系——用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n)
        联的特:一种实体型也可具特;若一联具备些特则它们须通过无向边与其关联。
1.2.4层次模型
- 层次模型用树形结构来表示各类实体以及实体间的联系
 
1.2.6 网状模型
- 网状数据库系统采用网状模型作为数据的组织方式
 
1.2.7 关系模型
- 从用户的视角出发,在数据库设计中我们通常会将数据的逻辑结构描述为由行与列组成的二维表格形式。
 - 通常来说,在数据库中将一张表称为一个关系。
 - 元组则代表一张表中的某一行数据。
 - 属性则对应于表中的某一列。
 - 主码指的是能够唯一标识一张表格中某一行的数据的那一组属性。
 - 域则表示某个属性的所有可能取值范围。
 - 分量则指的是元组中的某个具体数值。
 
1.3 数据库系统结构
1.3.1数据库系统的三级模式结构
- 模态(Schema):作为数据库中全部数据的结构及其特征进行说明。
- 外模态(External Schema):作为数据库中的用户视图,在特定应用下反映相关数据的信息。每个数据库可能拥有多个外模态;它们反映了不同用户的视角;这种设计有助于提升安全性。
 - 内模态(Internal Schema):详细说明了这些信息是如何存储以及物理布局如何安排
 
 

1.3.2 数据库的二级映射关系有助于实现数据独立性。
- 采用三级架构来划分数据的三个层次。
 - 通过DBMS内部机制建立这三个层次之间的联系和转换逻辑。
 
- 
外围结构/对应关系(多对一)
由系统设计人员通过优化相应的外部结构配置确保在外表结构中不发生变化。在发生结构变化时,程序系统基于数据在外表结构中的定义而被构建。 - 
模式/内模式映像的一元关系
保证数据的物理独立性:当数据库的存储结构发生改变时(例如采用另一种存储结构),数据库管理员会更新模式/内模式映像以确保其不发生变化,并使应用程序不受影响。这确保了数据与程序之间的物理独立性,并简称为数据的物理独立性 
