数据库学习 第三章总结(一)
2018-03-10 14:17
274 查看
关系数据模型
基本概念关系模型:用二维表格表示实体集,用关键码表示实体间联系的数据模型
域:是值的集合。即域是属性的取值范围
关系的特点:
(1)关系(表)可以看出是由行和列交叉组成的二维表格。它表示的是一个实体集合
(2)表中一行称为一个元组。可用来表示实体集中的一个实体
(3)表中的列称为属性,给每一列起一个名称即属性名,表中的属性名不能相同
(4)列的取值范围称为域,同列具有相同的域,不同的列也可有相同的域
(5)表中任意两行(元组)不能相同。能唯一标示表中不同行的属性或属性组称为主键
关系的性质:
(1)属性值是原子的,不可分解
(2)没有重复元组
(3)没有行序
(4)理论上没有列序,但是为了方便,使用时有列序
关键码:
(1)超键:在一个关系中能唯一标识元组的属性集称为关系模型的超键
(2)候选键:不含有多余属性的超键称为候选键
(3)主键:用户选择元组标识的一个候选键称为主键
(4)外键:不是本关系的主键,但是另一个关系的主键,则该属性为本关系的外键。
关系模式、关系子模式和存储模式
三级体系结构关系模式实际上是记录类型
关系子模式是关系模式的逻辑子集
存储模式是文件结构的描述
关系模型的完整性规则
三类完整性规则:实体完整性规则:实体主键属性值不能为空
参照完整性规则:不引用不存在的实体。外键值或为空,或为参照关系中的某个主键值
用户定义的完整性规则:由用户的应用环境决定
关系模型的形式定义
关系模型有三个组成部分:数据结构、数据操纵、完整性规则(1)关系模型基本的数据结构是关系
(2)关系运算分为关系代数和关系演算两类
(3)关系模型的三类完整性规则
ER模型到关系模型的转换规则
(1)实体类型的转换:将每个实体类型转换成一个关系模型,实体的属性即为关系模型的属性,实体标识符即为关系模型的键(2)联系类型的转换,根据不同情况做不同的处理:
①若实体间的联系是1:1的,可以在两个实体类型转换成的两个关系模型中任意一个关系模型的属性中加入另一个关系模型的键和联系类型的属性
②若实体间的联系是1:N的,则在N端实体类型转换成的关系模式中加入1端实体类型转换成的关系模式的键和联系类型的属性
③弱实体:若实体间的联系是1:N的,而且在N端实体类型为弱实体,转换成的关系模型中将1端实体类型(父表)的键作为外键放在N端的弱实体(子表)中。弱实体的主键由父表的主键与弱实体本身的候选键组成。也可以为弱实体建立新的独立的标识符ID
④若实体间的联系是M:N的,则将联系类型也转换成关系模型,其属性为两端实体类型的键加上联系类型的属性,而键为两端实体键的组合
超类和子类的转换规则
将超类和子类个转换成一个关系模型,在子类转换成关系模型(子表)中加入超类转换成关系模型(父表)的键,从而实现父表与子表的联系
过程性语言与非过程性语言
过程性语言:编程时必须指出“干什么”和“怎么干”的语言非过程性语言:编程时只须指出“干什么”,不必指出“怎么干”
相关文章推荐
- 数据库学习 第三章总结(二)
- 数据库学习第二季第五集:编程语言的存储过程和函数机制及其编程语言的调用学习总结
- Android开源:数据库ORM框架GreenDao学习心得及使用总结
- Android开源:数据库ORM框架GreenDao学习心得及使用总结
- 【数据库学习】数据库总结、SQL Server、SQList、android之sqlite
- SEO日常总结 SEO优化 SEO学习 明天接着读第三章 先把前两章的摘抄做个记录 没事的时候看看
- NoSQL 数据库产品学习总结(一)
- 数据库设计总结学习
- 暑假数据库学习历程总结
- Java嵌入式数据库H2学习总结(一)——H2数据库入门(转)
- MySQL学习总结(二)数据库以及表的基本操作
- oracle数据库学习总结在(一)
- Informix数据库学习总结(一)
- 数据库中间件MyCat学习总结(1)——MyCat入门简介
- Java嵌入式数据库H2学习总结(二)——在Web应用程序中使用H2数据库
- 《算法导论》学习总结 — 2.第一章 && 第二章 && 第三章
- 每日学习总结:可访问性不一致问题、table边框单元格效果、sql修改数据库、表、字段名
- Java学习总结之第十四章 数据库操作
- 数据库存储引擎学习总结
- Java学习总结之第三章 操作符