HTML5技术

关于数据库‘状态’字段设计的思考与实践 - 倒骑的驴(4)

字号+ 作者:H5之家 来源:H5之家 2017-08-20 12:00 我要评论( )

问题中的已评论由评论行为产生,而评论这个action并不是订单业务实体的核心业务流程,且可能存在多个前向依赖action(支付、发货、收货等),所以应当独立到一个字段标识。 问题中的已退货由退货行为产生,而退货这

问题中的‘已评论’由‘评论’行为产生,而‘评论’这个action并不是订单业务实体的核心业务流程,且可能存在多个前向依赖action(支付、发货、收货等),所以应当独立到一个字段标识。

问题中的‘已退货’由‘退货’行为产生,而‘退货’这个action是订单业务实体的核心业务流程,用户非常关心,且只单向依赖于‘收货’action,所以应当记录到订单业务实体表的‘订单状态’字段中。

问题中的‘已退款’由‘退款’行为产生,而‘退款’这个action是订单业务实体的核心业务流程,用户非常关心,但是这个action存在多个前向依赖action(支付、发货、收货等),所以应当独立到一个字段标识。

2、订单表的‘订单状态’字段对应的字典值如何表示?可选项有:使用数字标识、使用多‘位’存储方式标识、使用具有明确业务含义的英文字符串标识;

i、字典值域较多、变化较多、报表等业务场景会使用到的业务实体表的业务状态字段,使用‘方案d:新建字典表’的方案处理;如‘订单业务实体表’中的‘订单状态’字段。

j、字典值域较少、变化较少、报表等业务场景不会使用到的业务实体表的业务状态字段,使用‘方案a:使用数字标识字典’的方案处理;如‘支付宝的支付流水表’的‘支付流水状态’字段。

k、系统日志/跑批记录表的状态字段,使用‘方案a:使用数字标识字典’的方案处理;如‘待收货记录表’的‘跑批状态’字段。

3、订单表的‘订单状态’字段使用何种类型?可选项有:number(N)、char(N)、varchar2(N);

varchar2(N)占用存储更少,且具有同等的性能、扩展性,选择varchar2(N)作为数据库‘状态’字段的类型。

参考资料

数据库表设计(状态字段)

[原创]在Oracle 10g,Number、Char和Varchar2类型作为主键,查询效率分析

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 关于Egret模块化开发---vip系统 - aゞ时光无声

    关于Egret模块化开发---vip系统 - aゞ时光无声

    2017-08-15 12:00

  • 关于面试!(投递篇) - 碎冰

    关于面试!(投递篇) - 碎冰

    2017-07-28 18:00

  • 关于html转换为pdf案例的一些测试与思考 - 无涯Ⅱ

    关于html转换为pdf案例的一些测试与思考 - 无涯Ⅱ

    2017-07-28 17:09

  • HTML5 — Wed SQL 本地数据库示例 - gdwkong

    HTML5 — Wed SQL 本地数据库示例 - gdwkong

    2017-07-23 10:00

网友点评
l