博客
关于我
Mysql学习总结(85)——开发人员最应该明白的数据库设计原则
阅读量:790 次
发布时间:2023-02-12

本文共 622 字,大约阅读时间需要 2 分钟。

一、增删改尽量限定在本表进行

在数据库设计中,增删改查操作尽量限定在单一表中进行的原则,虽然与三大范式有所冲突,但从多个角度来看,这种做法具有显著的优势。

1. 开销优势

从性能角度考虑,操作单一表比多表更节省资源。单表设计减少了索引和锁竞争的可能性,使得数据库运行效率更高。

2. 开发便捷性

在数据存储过程中,单表操作减少了业务逻辑的复杂性。与多表操作相比,单表的数据关联关系更加清晰,开发实现难度降低。

3. 维护性优势

单表设计的业务逻辑相对简单,日后维护成本较低。而多表结构可能导致复杂的业务逻辑难以追踪和修复。


二、主键体现业务关系和流程顺序

在企业级应用中,理清业务模块之间的关系是关键。在数据库设计中,主键不仅用来标识记录的唯一性,还应该体现业务流程的顺序和关系。

通过主键设计,我们可以清晰地表达业务对象之间的关联。例如,一个订单可能包含多个订单项,而订单项的主键可以同时引用订单的主键,从而体现订单与订单项之间的关联。这种设计不仅提升了数据的一致性,也方便了数据的查询和操作。


三、表足够内聚

每个表应尽量代表一个独立的业务模块,包含与该模块相关的所有字段。这种设计理念源于单表操作带来的性能优势。

在实际应用中,一个表应满足以下条件:

  • 表中的字段完全反映业务模块的需求
  • 表的数据完全属于一个特定的业务场景
  • 表设计符合业务流程的自然逻辑

通过这种方式,表的数据完整性和一致性得到保障,同时也为业务逻辑的实现提供了坚实的基础。

转载地址:http://ukdfk.baihongyu.com/

你可能感兴趣的文章
MySQL报错ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘
查看>>
Mysql报错Packet for query is too large问题解决
查看>>
mysql报错级别_更改MySQL日志错误级别记录非法登陆(Access denied)
查看>>
Mysql报错:too many connections
查看>>
MySQL报错:无法启动MySQL服务
查看>>
mysql授权用户,创建用户名密码,授权单个数据库,授权多个数据库
查看>>
mysql排序查询
查看>>
MySQL排序的艺术:你真的懂 Order By吗?
查看>>
MySQL排序的艺术:你真的懂 Order By吗?
查看>>
Mysql推荐书籍
查看>>
Mysql插入数据从指定选项中随机选择、插入时间从指定范围随机生成、Navicat使用存储过程模拟插入测试数据
查看>>
MYSQL搜索引擎
查看>>
mysql操作数据表的命令_MySQL数据表操作命令
查看>>
mysql操作日志记录查询_如何使用SpringBoot AOP 记录操作日志、异常日志?
查看>>
MySQL支持的事务隔离级别,以及悲观锁和乐观锁的原理和应用场景?
查看>>
mysql支持表情
查看>>
MySQL支撑百万级流量高并发的网站部署详解
查看>>
MySQL改动rootpassword的多种方法
查看>>
mysql数据分组索引_MYSQL之索引配置方法分类
查看>>
mysql数据取差,mysql屏蔽主外键关联关系
查看>>