第一章 绪论 讨论题2
1. 讨论关系的几个概念 举例说明关系、关系模式、域、元组、属性、分量、码。
1)关系是对现实世界的实体以及实体间的各种联系的描述。
关系模型中数据的逻辑结构是一张二维表
2)关系模式
关系模式是对关系的描述,描述的是关系的结构和本质特征
关系名(属性1,属性2,…,属性n) R(U)
例如:上述二维表对应的关系模式可以表示为:
学生(学号,姓名,年龄,性别,系,年级)
3)域: 是一组具有相同数据类型的值的集合。
例如:整数、实数、介于某个取值范围的整数、指定长度的字符串集合、{‘男’,‘女’}……
4)元组: 关系中的每个元素是关系中的元组,即二维表的每行对应一个元组,通常用t表示。
单元关系与二元关系
当列为1时,称该关系为单元关系(Unary relation)或一元关系
当列为2时,称该关系为二元关系(Binary relation)
5)属性: 关系中不同列可以对应相同的域,为了加以区分,必须对每列起一个名字,称为属性(Attribute)
例如上表中的学号,姓名,年龄,性别,系,年级均为属性。
6)分量: 具体某个元组中在某个属性上的具体取值。
例如: 上述二维表中第2个元组在年龄上的取值为:20
7)码:
候选码(Candidate key): 若关系中的某一属性组的值能唯一地标识一个元组,而其子集不能,则称该属性组为候选码
简单的情况:候选码只包含一个属性
全码(All-key): 最极端的情况:关系模式的所有属性组合是这个关系模式的候选码,称为全码(All-key)
主码: 若一个关系有多个候选码,则选定其中一个为主码(Primary key)
主属性: 候选码的诸属性称为主属性(Prime attribute)
不包含在任何侯选码中的属性称为非主属性(Non-Prime attribute)或非码属性(Non-key attribute)
例如:上述二维表中的学号,学号的值能唯一地标识每一个元组,所以学号是该二维表的候选码。
2.讨论两级数据模型与三级模式结构 讨论概念模型、逻辑模型、物理模型与三级模式结构的联系。
1)数据模型分为两类(两个不同的层次)
Ⅰ 概念模型也称信息模型,它是按用户的观点来对数据和信息建模,用于数据库设计。
Ⅱ 逻辑模型和物理模型
逻辑模型主要包括网状模型、层次模型、关系模型、面向对象数据模型、对象关系数据模型、半结构化数据模型等。按计算机系统的观点对数据建模,用于DBMS实现。
物理模型是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。
物理模型的具体实现是DBMS的任务,数据库设计人员要了解它,而一般用户不必考虑物理细节。
2)概念模型的用途
①概念模型用于信息世界的建模
②是现实世界到机器世界的一个中间层次
③是数据库设计的有力工具
④数据库设计人员和用户之间进行交流的语言
对概念模型的基本要求
①较强的语义表达能力
②简单、清晰、易于用户理解
3)从数据库应用开发人员角度看,数据库系统通常采用三级模式结构,是数据库系统内部的系统结构
从数据库最终用户角度看,数据库系统的结构分为:
单用户结构
主从式结构
分布式结构
客户-服务器
浏览器-应用服务器/数据库服务器多层结构等
4)模式(Schema)
①数据库逻辑结构和特征的描述
②是型的描述,不涉及具体值
③反映的是数据的结构及其联系
④模式是相对稳定的
5)实例(Instance)
①模式的一个具体值
②反映数据库某一时刻的状态
③同一个模式可以有很多实例
④实例随数据库中的数据的更新而变动
6)
7)模式(也称逻辑模式)
①数据库中全体数据的逻辑结构和特征的描述
②所有用户的公共数据视图
一个数据库只有一个模式
模式的地位: 是数据库系统模式结构的中间层
Ⅰ与数据的物理存储细节和硬件环境无关
Ⅱ与具体的应用程序、开发工具及高级程序设计语言无关
模式的定义
①数据的逻辑结构(数据项的名字、类型、取值范围等)
②数据之间的联系
③数据有关的安全性、完整性要求
8)外模式(也称子模式或用户模式)
①数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述
②数据库用户的数据视图,是与某一应用有关的数据的逻辑表示
③模式与外模式的关系:一对多
Ⅰ. 外模式通常是模式的子集
Ⅱ. 一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求
④外模式与应用的关系:一对多
Ⅰ. 同一外模式也可以为某一用户的多个应用系统所使用
Ⅱ. 但一个应用程序只能使用一个外模式
9)内模式(也称存储模式)
(1)是数据物理结构和存取方式的描述
(2) 是数据在数据库内部的表示方式
① 记录的存储方式(例如,顺序存储,按照B树结构存储,按hash方法存储等)
② 索引的组织方式
③ 数据是否压缩存储
④ 数据是否加密
⑤ 数据存储记录结构的规定
(3) 一个数据库只有一个内模式
10)总结:
(1)模式: 描述的是数据的全局逻辑结构
(2) 外模式: 描述的是数据的局部逻辑结构
(3) 同一个模式可以有任意多个外模式 .
(4) 每一个外模式,数据库系统都有一个外模式/模式映象,定义外模式与模式之间的对应关系。映象定义通常包含在各自外模式的描述中
(5) 保证数据的逻辑独立性
① 当模式改变时,数据库管理员对外模式/模式映象作相应改变,使外模式保持不变
② 应用程序是依据数据的外模式编写的,应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性
11)
(1) 模式/内模式映象定义了数据全局逻辑结构与存储结构之间的对应关系。
例如,说明逻辑记录和字段在内部是如何表示的
(2) 数据库中模式/内模式映象是唯一的
(3) 该映象定义通常包含在模式描述中
(4) 保证数据的物理独立性
① 当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式/内模式映象,使模式保持不变。
② 应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。