数据库复习第一章
1.2数据模型
分类:
-
概念模型
也称信息模型,按用户的观点来对数据和信息建模,主要应用于数据库设计 -
逻辑模型和物理模型
主要包括层级模型、网状模型、关系模型等,按计算机系统的观点对数据建模,主要应用于数据库管理系统的实现
概念模型
1.基本概念
(1)实体(entity)
客观存在并可互相区别的事物成为实体
(2)属性(attribute)
实体具有的某一特性成为属性
(3)码(key)
唯一标识实体的属性集称为码
(4)实体型(entity type)
用实体名及其属性名集合来抽象和刻画同类实体,称为实体型(就是一堆属性)
(5)实体集(entity set)
同一类型实体的集合称为实体集(一堆实体)
(6)联系(relationship)
实体之间的联系通常指的是不同实体集之间的联系。
实体之间的联系有 一对一、一对多、多对一和多对多等类型
2.表示方法
最为常用的表示方法是实体-联系方法(Entity-Relationship approach)
用于E-R图,E-R方法也称E-R模型。(详见第七章)
数据模型的组成要素
1.数据结构
描述数据库的组成对象以及对象之间的联系
2.数据操作
对于数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及有关的操作规则
3.数据的完整性约束条件
就是一组完整性的规则
保证数据的正确、有效、相容
常用的数据模型
层次模型
定义满足下面两个条件的基本层次联系的集合称为层次模型:
(1)有且只有一个节点没有双亲节点,也就是根节点
(2)根以外的其他节点有且只有一个双亲节点
总体来说,层级模型像一颗倒立的树,节点的双亲是唯一的。
优点:
数据结构简单清晰
查询效率高,性能优于关系数据库,不低于网状数据库
提供良好的完整性支持
缺点:
节点之间多对多的关系不适合用层次表示
若一个节点有多个双亲节点,这种联系的表达就非常笨拙且对于插入和删除操作的限制要求较多
应用程序的编写也较为复杂
查询子女节点必须访问双亲节点
层次命令趋于程序化
网状模型
定义满足下面两个条件的基本层次联系的集合称为网状模型:
(1)允许一个以上节点无双亲
(2)一个节点可以有多余一个的双亲
优点:
更为直接的描述现实世界
具有更好的性能,存取效率高
缺点:
结构复杂,不利于最终用户掌握
记录之间的联系通过存取路径实现,在访问数据时必须选择适当的存取路径,因此用户必须链接系统结构的细节,加重了编写应用程序的负担
关系模型
详情见第二章
1.3数据库系统的结构
系统模式的概念
型:对某一类数据的结构和属性的说明
值:是型的具体赋值
模式:数据库中全体数据的逻辑结构和特征的描述,仅涉及型的描述,而不涉及具体的值
模式的一个具体值为一个实例,同一个模式可以有很多个实例
模式是相对稳定的,而实例是相对变动的
数据库系统的三级模式结构
1.模式
也称逻辑模式,是全体数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
不涉及数据的物理存储细节和硬件环境,也不涉及具体的应用程序和高级程序设计语言
一个数据库只有一个模式。数据库模式以某一种数据模型为基础统一综合地考虑所有用户的需求,然后结合成一个整体。
2.外模式
也称子模式,是数据库用户能看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是某一应用有关的数据的逻辑表示。
外模式通常是模式的子集,一个数据库可以有多个外模式
3.内模式
也称储存模式。一个数据库只能有一个内模式 ,是数据物理结构和存储方式的描述。