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

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

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

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

1. 开销优势

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

2. 开发便捷性

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

3. 维护性优势

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


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

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

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


三、表足够内聚

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

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

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

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

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

你可能感兴趣的文章
MySQL和Java数据类型对应
查看>>
mysql和oorcale日期区间查询【含左右区间问题】
查看>>
MYSQL和ORACLE的一些操作区别
查看>>
mysql和redis之间互相备份
查看>>
MySQL和SQL入门
查看>>
mysql在centos下用命令批量导入报错_Variable ‘character_set_client‘ can‘t be set to the value of ‘---linux工作笔记042
查看>>
Mysql在Linux运行时新增配置文件提示:World-wrirable config file ‘/etc/mysql/conf.d/my.cnf‘ is ignored 权限过高导致
查看>>
Mysql在Windows上离线安装与配置
查看>>
MySQL在渗透测试中的应用
查看>>
Mysql在离线安装时启动失败:mysql服务无法启动,服务没有报告任何错误
查看>>
Mysql在离线安装时提示:error: Found option without preceding group in config file
查看>>
MySQL基于SSL的主从复制
查看>>
Mysql基本操作
查看>>
mysql基本操作
查看>>
mysql基本知识点梳理和查询优化
查看>>
mysql基础
查看>>
Mysql基础 —— 数据基础操作
查看>>
mysql基础---mysql查询机制
查看>>
MySQL基础5
查看>>
MySQL基础day07_mysql集群实例-MySQL 5.6
查看>>