数据库系统:第二章 关系模型和关系运算理论
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
成绩:0-100
关系名及其各属性名――>关系模式(Relation Schema).
选课(学号,课程号,成绩)
关系中属性的个数――>关系的目或元数 3 关系中元组的个数――>关系的基数 2 关系中各元组用关键字(Key word—简称键)来标识.
选课(学号,课程号,成绩) 说明:表与关系、元组与记录、属性与列/字段等术语可以通用
第二章 关系模型和关系运算理论
第二章 关系模型和关系运算理论
关系模型是当前的主流逻辑数据模型 首先由IBM公司的高级研究员E.F.Codd于1970年提出 应用广泛的原因:
• 单一的数据建模概念 • 坚实的数学理论基础 • 提供高级接口:数据库语言SQL
第二章 关系模型和关系运算理论
第二章 关系模型和关系运算理论
第二章 关系模型和关系运算理论
2.1 关系模型的基本概念 2.1.1 关系模型的数据结构 2.1.2 关系的定义和性质 2.1.3 关系模型的数据约束 2.1.4 E-R模型向关系模型的转换 2.1.5 关系模型的数据操作 2.1.6 关系模型的三级模式和优点 2.2 关系代数 2.3 关系演算概述 2.4 关系代数表达式的优化
选修 n
课程
课号 … E-R图
学号
98410 981410
2:
姓名 王一 赵二
:
性别 出生日期 …
男 1980/06/03
女 1981/04/28
:
:
学号
984101 :
课号
0001 :
成绩 85 :
课程号 课程名 学分 开课时间 …
0001 局域网 2
春季
0002 数据库 3
秋季
:
:
:
:
第二章 关系模型和关系运算理论 2.1 关系模型的基本概念
例2:STUDENT(学号,姓名,性别,出生日期,籍贯)候选键? ?学号,姓名 ――>×
主属性 ――包含在任何一个候选键中的属性 非主属性――不包含在任何一个候选键中的属性
例3:选课(学号,课程号,成绩)
第二章 关系模型和关系运算理论 2.1 关系模型的基本概念
(3)主键 (Primary Key)――用户选作元组标识的候选键,
第二章 关系模型和关系运算理论 2.1 关系模型的基本概念
(6)外键(Foreign Key) ①如果模式R中的属性K是其它模式的主键,那么K 在模式R中称为外键,记做( FK ) 。 ②不是本关系的键,却引用了其它关系或本关系的 键的属性或属性组,记做( FK )
例6:
关系STUDENT(学学号号,姓名,性别,出生日期,籍贯)
第二章 关系模型和关系运算理论 2.1 关系模型的基本概念
2.1.3 关系模型的完整性约束 PP.41
语法上的规定:每个元组属性都取域中的值 语义上的限制:完整性约束规则
在对DB进行更新 (I/D/U)操作时检查 保证数据与现实世界的一致性 关系模型有三类完整性规则: 实体完整性规则(Entity Integrity Constrain) 参照(引用)完整性规则(Reference Integrity Constrain) 用户定义的完整性规则
2.1.1 关系模型的数据结构
一、从用户的角度看
关系数据库由二维表组成 每张二维表中的: (1)一列对应一个字段
每个字段反映事物的一个特征 每个字段都有字段名和字段值
(2) 一行对应一条记录
学号
984101 984102
课程号
0001 0001
成绩 85 90
第二章 关系模型和关系运算理论 2.1 关系模型的基本概念
第二章 关系模型和关系运算理论 2.1 关系模型的基本概念
三.键(Key) ―― 数据间关系的描述(表内的、表间的)
(1)超键(Supper Key) ――其值能唯一地决定其它所有属性 的值的属性集
例1:STUDENT(学号,姓名,性别,出生日期,籍贯)
?学号,姓名 ――> Y
(2)候选键:不含多余属性的超键。 或:其值能唯一地决定关系中其它所有 属性的值、而它的任何真子集无此性质 的属性或属性组。
2.1 关系模型的基本概念
关系模型的定义: 用二维表格(table)表示实体集及其间联系, 用关键码(或键)进行数据导航的数据模型
理论基础:集合论中的关系(Relation)概念 关系数据模型属逻辑数据模型,具有三要素
第二章 关系模型和关系运算理论 2.1 关系模型的基本概念
学号 …
学生 成绩 m
称为主键( PK ),简称键
(4)候补键(Alternate Key) ――主键之外的候选键
例4: 设 在STUDENT关系中,学生姓名唯一 则 学号、姓名都为STUDENT的候选健 若 定义学号为主键,则姓名就为候补健
(5)全键――由关系的所有属性构成的主键
例5:
项目
n 零件
m 供应
p 供应商
SUPPLY(供应商,零件名,工程名)
2.1 关系模型的基本概念 2.1.1 关系模型的数据结构 2.1.2 关系的定义和性质 2.1.3 关系模型的数据约束 2.1.4 E-R模型向关系模型的转换 2.1.5 关系模型的数据操作 2.1.6 关系模型的三级模式和优点 2.2 关系代数 2.3 关系演算概述 2.4 关系代数表达式的优化
PK
关系COURSE(课程名,课程号,学分,开课时间,先修课号)
PK
关系SC (学号,课程号,成绩) FK PK FK
* 关系数据模型中实体间(表间)的联系是用外键隐含地表示的
第二章 关系模型和关系运算理论 2.1 关系模型的基本概念
思考:
在关系COURSE(课程名,课程号,学分,开课时间,先修课号) 中先修课号是什么键,与课程号的关系如何 ?
第二章 关系模型和关系运算理论 2.1 关系模型的基本概念
2.1.2 关系的定义和性质
一.定义 关系是一个属性数目(目)相同的元组的集合
有限关系:元组数目(基数)有限
二.性质 • 关系中的每一个属性值都是不可分解的,即
关系的属性域是原子数据的集合 • 关系模型中属性无序(不同于集合)R(A1,A2)= R(A2,A1) • 关系模型中元组无序 • 同一关系中不允许有相同元组
二.理论术语
学号 课程号 成绩
关系数据库由关系组成
984101 0001 85
Baidu Nhomakorabea
984102 0001 90
一个关系由一张二维表表示
关系由元组(Tuple)组成,一个元组对应表中的一行(Row).
元组由属性组成,一属性一列(Clumn),属性有名/值.
属性的取值范围(所有可取值的集合)――>属性域
D每o个m关a系in(都A有). 关系名. 选课