zoukankan      html  css  js  c++  java
  • 数据库设计【笔记】

    数据库设计
     一、设计步骤
       1.收集信息(来源项目需求分析)
       2.标识实体(一般是需求分析中需要管理的信息名词)
       3.标识每个实体的属性
       4.实体之间的关系
    二、画e-r图(实体关系图)
       1.矩形表示实体
       2.椭圆表示实体的属性
       3.菱形表示实体之间的关系
       4.用直线连接实体和属性,实体和实体之间的关系
    三、实体之间的关系:
       1.一对一  1:1          车和车位
       2.一对多  1:N (1:M) 客人和客房
       3.多对多  N:M          图书和作者
    四、E-R图映射到数据表
       1.一般一类实体映射为表
       2.实体中的属性映射为表中的列
       3.关系的映射:
          (1)一对一:映射为一个表,其中一个实体的属性
          (2)一对多:每个实体一个表,通过主外键表示关系,如客人和客房,在客人表里添加一个房间号作为外键,客房中的房间号就是主键。
          (3)多对多:每个实体一个表,关系映射为一个表
          映射3个表,图书表  作者表  关系表
    五、用三大范式衡量或规范数据库
       1.每列都是一个不可再分的单元(保持原子性)  符合第一大范式
       2.在满足第一范式的情况下,每个表只描述一件事,就符合第二范式
       3.在满足一二范式的情况下,并且除主键外,其他列都不传递依赖于主键,符合第三范式(除主键外, 所有的列都是直接依赖于主键而不是间接的依赖于主键)
    六、数据非规范化设计:
        规范化设计的话是把大表拆分成小表,节约空间但同时会降低性能,为了提高性能,进行非规划化设计

  • 相关阅读:
    DevExpress-xaml常用控件
    循环中Random()产生相同随机数问题的对策
    插入U盘提示程序
    钛度TSG309鼠,血手幽灵P93 彩漫鼠,微星GM41Lightweight鼠标参数对比
    MarkdownPad
    C# 通过路径取文件方法
    初识张首晟教授有感
    【机器学习123】模型评估与选择 (上)
    【机器学习123】绪论
    【深度学习123】开篇
  • 原文地址:https://www.cnblogs.com/a1111/p/6540373.html
Copyright © 2011-2022 走看看