数据库系统概论-第七章

数据库设计过程数据库

概念设计 conceptual-design
功能需求说明 specification of functional requirement
逻辑设计阶段 logical design
物理设计阶段 physical designapp

设计数据库模式数据库设计

数据库模式应避免的两个缺陷:
冗余 例如,每一次开课咱们都存储课程编号和课程名称,那么每一次开课都冗余了课程编号和名称。理想的状况下,信息应该只出如今一个地方。
不完整 若是只在课程表存储全部的课程信息,那么每次开课都要存储一份课程的全部信息,新课程的信息没法独立展现。ui

实体联系模型 entity-relationshio E-R设计

实体集 entity set 具备相同类型(相同属性)的实体的集合,实体集通常指实体之间的关系
实体集的外延 extension 实体集的实体的实际集合
实体集经过一组属性(attribute)来表示,每一个属性(attribute)都有一个值(value)
实体 entity 表明全部可明确识别的个体,每一个实体都有一组属性,其中一些属性的能够惟一的标识一个实体对象

联系集 relationship set 相同类型的联系的集合
联系 relationship 多个实体间的相互关联ip

实体集的关联称为参与(pariticipate),能够说E1,E2.。。En参与了联系集Rci

实体在联系中扮演的功能称为实体的角色,若是一样的实体集以不一样的角色参与同一联系集,这种联系集合称为自环recursive。rem

属性get

属性能够分为简单和复合属性 好比name能够由first_name,middle_name,last_name组成

属性的值可分为单值和多值,即一个值和多个值,好比一我的可能有多个手机号

派生属性 好比教师对象有一个值学生集合,学生集合的数量统计就是一个派生的属性

约束

映射 mapping。映射基数 mapping cardinality 一个实体经过联系能够关联的实体数量

一对一 one-to-one 关系A有且仅有一个实体与关系B中的实体关联,反之,关系B有且只有仅有一个实体与关系A关联

一对多 one-to-many 关系A中实体能够与关系B中任意数量的实体关联,反之,关系B中实体只能与关系A中一个实体关联

多对多 many-to-many 关系A中实体能够与关系B中任意数量实体关联,反之,关系B中实体能够与关系A中任意数量实体关联

实体集删除冗余

实体集 instructor包含属性 ID,name,dept_name以及salary
实体集 department包含属性dept_name,building以及budget

属性dept_name在实体集instructor和department中都存在,因此说它是冗余的

设计时避免因为关联联系集而形成属性的冗余

实体-联系图 E-R

同一建模语言 UML. TODO

类图 class diagram 类图相似于E-R图 用况图 use case diagram 用户和系统之间的交互,用户所执行的任务重的每一步操做 活动图 activity diagram 系统不一样部分之间的任务流 实现图 implementation diagram 在软件和硬件层面说明系统的各组成部分

相关文章
相关标签/搜索