登录
首页 >  数据库 >  MySQL

基于业务设计数据表的总结

来源:SegmentFault

时间:2023-02-17 10:43:10 476浏览 收藏

在IT行业这个发展更新速度很快的行业,只有不停止的学习,才不会被行业所淘汰。如果你是数据库学习者,那么本文《基于业务设计数据表的总结》就很适合你!本篇内容主要包括基于业务设计数据表的总结,希望对大家的知识积累有所帮助,助力实战开发!

clipboard.png

抛去测试、架构来说,数据表设计是指定功能开发的一个起点,如果出现失误将会对未来开发以及运行都会有很大的影响。接下来我们聊聊应该如何根据需求去设计数据表。

原型图

首先产品递交的绝笔是份原型图或者需求文档,这里先看原型图,根据原型图上的任意label、input汇总,再根据逻辑不同去划分为不同的块(也就意味着不同的表)。以电商优惠卷为例,原型图可能是这样的(原谅我不会画这图,就拿京东的一张图代替吧)。

clipboard.png

当你看到这张原型后,首先你得确认这是个什么功能是吧。瞅了一眼是优惠券的功能,首先确立有了第一张表和表名

  • coupons

再者优惠券是给予用户使用的,所以又有了

  • user_coupons

一个是优惠券存库表,一个是发送优惠券的用户表,至此表名想好了。接下来就是字段了。

分离

根据上述原型图我们可以将字段所属逻辑区域分成以下这样

clipboard.png

将以原型图为基准的逻辑分为两大块,一块是显示相关的字段,另一块则是控制相关的字段(如添加时间,过期时间,状态等)。

任意一家公司都想要有相关行业经验的开发者,并不是因为技术有多高深,而是可以根据给出的具有局限性的原型图去扩展字段。考虑未来业务发展所需要的,这实际也是架构的一部分。

扩展

大概的以张图来说明所说的扩展字段。

clipboard.png

通过以自己的日常生活经验和开发经验对具有局限性的原型图进行扩展。是一个业务程序员最起码的技能。
在之后,将要面临一些性能的考虑了。

性能

本章并不会详细将数据表的设计上,就大概的根据优惠券的功能讲解下思路。

  • 批量发放应该考虑的技术问题
  • 考虑频繁被查询的字段设置索引,例如优惠券功能?标题等...
  • 有效期使用datetime设置,时间戳对于sql查询的局限太大。

一张原型图迁出的考虑因素很多。也是一名程序员的基础。

致谢

感谢你看到这里,希望本篇文章可以帮助到你,谢谢。

今天关于《基于业务设计数据表的总结》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表