• 数据库设计


    目录

    一、软件项目开发周期中数据库设计

    1、需求分析阶段

    2、概要设计阶段

    4、 数据库规范化

    5、三大范式


    在实际的项目开发中,如果系统的数据存储量较大,设计的表比较多,表和表之间的关系比较复杂,首先就需要进行规范化的数据库设计,良好的数据库设计,节省数据的存储空间,能够保证数据的完整性,方便进行数据库应用系统的开发

    糟糕的数据库设计:数据冗余、存储空间浪费,内存空间浪费;数据更新和插入的异常

    一、软件项目开发周期中数据库设计

    1、需求分析阶段:分析客户的业务和数据处理需求;

    2、概要设计阶段:设计数据库的E-R模型图,确认需求信息的正确和完整;

    3、详细设计阶段:应用三大范式审核数据库结构,将E-R图转换为数据库模型图;

    4、代码编写阶段:物理实现数据库,编码实现应用;

    5、软件测试阶段:编写测试文档,进行软件测试工作;

    6、软件维护阶段:安装部署,维护升级等工作;

    1、需求分析阶段

    1、收集信息:与该系统有关人员进行交流、座谈,充分了解用户需求,理解数据库需要完成的任务;

    2、标识实体 (Entity):标识数据库要管理的对象或实体,实体一般是名词;

    3标识每个实体的属性(Attribute);

    4、标识实体之间的关系(Relationship);

    2、概要设计阶段

    E-R图也称实体-关系图(Entity Relationship Diagram),提供了表示实体类型、属性和关系的方法,是描述现实世界关系概念模型的有效方法。是表示概念关系模型的一种方式。

    符号含义

    实体,一般是名词

    属性,一般是名词

    关系,一般是动词

    3、详细设计阶段
    数据库设计建模工具:
    PowerDesignerRational RoseVisio三种建模工具比较

    序号比较角度PowerDesignerRational RoseVisio
    1

    开发公司

    Sybase

    Rational

    Microsoft

    2

    开始的侧重点

    数据库建模

    UML建模

    画图工具

    3

    应用系统规模

    适合大中型系统开发

    适合大中型系统开发

    中小型系统的开发

    4

    编程语言

    支持多种编程语言

    支持多种编程语言

    只支持微软的编程语言

    5

    数据库建模

    最好

    酒店管理系统的E-R——Visio

     酒店管理系统的E-R——PowerDesigner

    4、 数据库规范化

    什么是范式:

    数据库设计对数据的存储性能,还有开发人员对数据的操作都有莫大的关系。所以建立科学的,规范的的数据库是需要满足一些规范的来优化数据数据存储方式。在关系型数据库中这些规范就可以称为范式。

    不合规范的设计:

    信息重复;更新异常;插入异常(无法正确表示信息);删除异常(丢失有效信息)

    范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法

    5、三大范式

    1NF:第一范式

    2NF:第二范式

    3NF:第三范式

    第一范式(1NF

    第一范式的目标是确保每列的原子性。

    如果每列都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式(1NF)。

     第二范式(2NF

    如果一个关系满足第一范式,并且每列必须和主键相关,则满足第二范式 。

    第二范式要求每个表只描述一件事情。

    第三范式(3NF

    如果一个关系满足第二范式,并且表中各列必须和主键直接相关,不能间接相关,则满足第三范式

    例如

    规范化的酒店管理系统E-R

     规范化的酒店管理系统数据库模型图

     

  • 相关阅读:
    华为OD七日集训第4期 - 按算法分类,由易到难,循序渐进,玩转OD
    git常用命令
    Vue项目实战——【基于 Vue3.x + Vant UI】实现一个多功能记账本(登录注册页面,验证码)
    Lua中如何实现类似gdb的断点调试--05优化断点信息数据结构
    掌握Flink键控状态(Keyed State):深入指南与实践
    C# 委托原理、事件原理刨析和对比
    Autosar SWC在Simulink中Parameter的使用
    382. K取方格数(图论,费用流,拆点,上下界可行流,网格图模型)
    设计模式之装饰着模式(七)
    [Spring Boot]09 Spring Boot集成和使用Redis
  • 原文地址:https://blog.csdn.net/qi341500/article/details/126675575