数据库设计-02-建立数据模型

0 现实世界的数据化

Paste_Image.png

1 概念模型

1.1 基本概念

Paste_Image.png

1.2 E-R 模型

1.2.1基本组成元素

Paste_Image.png

1.2.2 设计原则

E-R Rules.png

(1)相对原则
属性和联系本质上都是实体,可以相互转化
(2)一致原则
同一对象在业务系统和子系统之间要保持一致
[TODO]
(3)简单原则
将尽可能多的实体转换为属性

1.2.3 E-R模型联系

Paste_Image.png
三种基本关系

1.2.4 合并E-R图冲突

Paste_Image.png

(1)命名冲突
一个对象抽象的实体在不同子系统中叫了不同的名字,
或者在不同系统的两个对象,命名相同
(2)属性冲突
同一个实体在不同子系统中的某一属性类型不同
(3)结构冲突
例如,同一对象,在A系统中为实体,在B系统中为关系。

注:合并冲突出现在局部E-R模型集成为全局E-R模型的过程中

1.2.5 E-R图设计流程

Paste_Image.png

1.2.5.1 局部E-R图设计流程

[TODO]

个人经验总结
Step 1: 列出所有实体的名称 ,顺手列出他们各自的主码
Step 2: 在各个实体之间找出他们之间的关系,这一步是在整个E-R图设计过程中最重要的一步,同时在第一步中列出的实体,可能在你进一步的设计中变成了联系,这都是有可能的。
Step 3: 为各个实体和联系添加详细的属性。(当然这一步可以往后靠,可以先做局部E-R模块集成,最后再添加属性,再或者生成了数据库之后,最后再到DBMS中添加,这都是可以的)

2 数据模型

2.1主要数据模型

Paste_Image.png

2.2 基本概念

Paste_Image.png

表 : Student

Paste_Image.png

关系模式
Student (学校ID,学生学号,姓名,身份证号,性别)

候选码
能够唯一确定一行元组的属性组合有两种

候选码1

( 学校ID , 学生学号)

候选码2

学生身份证号

主码
主码只能有一个。(注:可以为复合主码)
我们从候选码中选择 (学校ID,学生学号)作为主码

外部码
这里班级号为外部码

元组
表中的一行数据


分量
一行数据中某一属性的值: 大山


属性的取值范围
性别: {男,女}

2.3 完整性约束

(1) 实体完整性 Entity Integrity **
任一候选码的任一属性不能为空
(2)
参照完整性**
如果A引用了B中的元素,例如我们之前例子中的属性: 班级号
它是外部码,假设对应的另一张表叫Class,主码为班级号
则A中的班级号要么为空,要么必须为Class表中已有的班级号
(3)用户自定义完整性
用户对自己定义的属性的约束条件,例年龄不能>60,学号必须是八位等等。

3 E-R图向关系模式转换

[TODO]

4 Summary

Paste_Image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.数据库是存储在计算机存储设备中的、结构化的相关数据的集合。数据库中的数据不只是面向某一项特定的应用,而是面向多...
    雾熏阅读 1,854评论 0 7
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,836评论 18 139
  • 回顾数据库设计三个阶段:概念数据库设计:生成数据库的概念表示,包括重要的实体、联系以及属性的定义。逻辑数据库设计:...
    板蓝根plank阅读 3,466评论 0 11
  • 数据库设计 数据库设计定义数据库设计 是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据...
    iOS_愛OS阅读 1,645评论 0 1
  • [TOC] ER模型 实体 属性(实体的属性) 域(属性的取值范围) 候选码(唯一标识实体的属性或最小属性组)必须...
    梁思宇阅读 3,548评论 1 6