专栏首页Grace development基于业务设计数据表的总结

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

前言

这是一篇日常开发中根据产品需求去设计数据表的总结。

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

原型图

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

当你看到这张原型后,首先你得确认这是个什么功能是吧。瞅了一眼是优惠券的功能,首先确立有了第一张表和表名 – coupons 再者优惠券是给予用户使用的,所以又有了 – user_coupons

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

分离

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

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

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

扩展

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

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

性能

本章并不会详细将数据表的设计上,就大概的根据优惠券的功能讲解下思路。 – 批量发放应该考虑的技术问题 – 考虑频繁被查询的字段设置索引,例如优惠券功能?标题等… – 有效期使用datetime设置,时间戳对于sql查询的局限太大。

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

致谢

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Beego 文件上传至七牛云的玩法

    Beego是一款GO语言开发的传统MVC的框架,beego对上传这块的代码封装的也非常简单易用。

    CrazyCodes
  • Laravel源码解析之反射的使用

    PHP的反射类与实例化对象作用相反,实例化是调用封装类中的方法、成员,而反射类则是拆封类中的所有方法、成员变量,并包括私有方法等。就如“解刨”一样,我们可以调用...

    CrazyCodes
  • 基于TP的每日签到代码

    CrazyCodes
  • PNAS|厄尔尼诺预测新突破——基于信息熵理论

    厄尔尼诺现象,是赤道中、东太平洋海表温度持续异常升温的周期性气候现象,平均每2-5年发生一次,对全球气候具有重大影响。厄尔尼诺现象会造成全球不同地区的异常温度变...

    气象学家
  • 深入koa源码 - 手动实现玩具版koa

    设计思想和第三方库原理都在前 2 篇详细说明了。这篇主要目的是做一个验证检验,在语法使用 ES6/7 的语法。

    心谭博客
  • 将你的博客升级为 PWA 渐进式Web离线应用

    PWA 全称 Progressive Web Apps(渐进式 Web 应用程序),旨在使用现有的 Web 技术提供用户更优的使用体验。 基本要求

    ihoey
  • Dart-Aqueduct框架开发(八)

    我们只需要明确,当用户使用用户名和密码进行登录时,服务端会返回访问令牌token、刷新令牌refreshToken、访问令牌过期时间给客户端,客户端把令牌保存下...

    rhyme_lph
  • 编码篇 — 一个DataModel小例领略指针的魅力

    做过的项目中曾经有这样的需求:货品录入(商品入库),弹框弹出所有的货品(很多),选择其中的一个,则下次弹框弹出所有货品时不再显示选择了的那件货品。当然,录入功能...

    進无尽
  • 阿里和亚马逊谁才是电商之王?

    这几年,中国的互联网企业已经越来越强大了,尤其是腾讯和阿里两大巨头,已经跻身全球500强。而且,从全球市值的排行来看,腾讯和阿里也都稳定进入了前十的榜单。特别是...

    光荣与梦想1987
  • NYOJ 58 最少步数(dfs或者bfs)

           这道题最开始是用dfs做的,后来学会了bfs以后有一次用bfs做了这道题,但是奇迹般的TLE了,当时还纠结了半天最少步数竟然不能用bfs做吗?然后...

    Ch_Zaqdt

扫码关注云+社区

领取腾讯云代金券