美文网首页
数据库设计-02-建立数据模型

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

作者: 1Z实验室阿凯 | 来源:发表于2016-06-17 10:18 被阅读166次

    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

    相关文章

      网友评论

          本文标题:数据库设计-02-建立数据模型

          本文链接:https://www.haomeiwen.com/subject/dftvdttx.html