开发者学堂课程【RocketMQ 知识精讲与项目实战(第二阶段):数据库表结构介绍】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/703/detail/12405
数据库表结构介绍
内容介绍:
一、优惠券表
二、商品表
三、订单表
四、订单商品日志表
五、用户表
六、用户余额日志表
七、订单支付表
八、MQ 消息生产表
九、MQ 消息消费表
十、总结
整个数据库是由九张表构成,九张表的意思是所做的业务其实主要是完成一个商城,商城的本质是进行商品的售卖,用户要在商城上面选购商品完成一个支付操作,所以这些表都是跟线上购物相关的。
一、优惠券表
有在线购物的都会有优惠券使用的经历,在这里边商城也可以使用优惠券,在优惠券表中有一些字段,第一个是 ID,第二个是优惠券金额,第三个是用户 ID ,就是用户领了某一个优惠券,进行标识,就是当前优惠券属于哪一个用户的,然后优惠券被使用之后肯定是在某一订单当中去使用优惠券,所以将来在使用之后还会去关联订单案例,第四个是优惠券的使用状态0是未使用,1是已使用,最后有一个使用时间。
二、商品表
商品表是一个比较核心的表,里面有一些字段,如主键、商品名称、商品库存(代表商品含有多少个能够销售多少个)、商品的价格、商品的描述以及商品的添加时间,是一个简单表。
三、订单表
订单表中有以下几个字段,第一个是订单 ID ,再用户 ID ,之后订单的状态,这个用户 ID 说明哪个用户下了订单,而这个订单的状态有0未确认,1已确认,2已取消,3无效订单,4退款,然后下单之后进行支付,而支付的状态也会进行一个标注,0代表未支付,1代表支付当中,2代表已支付,还有这个发货状态,0是未发货,1是已发货,2是已收货,还可以进行标识,2是已退货。
下图这些就包括收货地址,收货人,商品的 ID ,当前订单里面有什么商联,然后商品的数量,商品的价格,总价运费,订单价格,优惠券的 ID ,优惠劵的金额,已付的金额,创建时间,订单的确认时间以及支付的时间。
四、订单商品日志表
这个表其实是进入这个用户进行下单的时候对于商品库存的操作。在下单的时候是减库存,下单失败要进行库存的回退,就是针对订单当中商品的库存的操作有这么一个记录表。这里边相关的字段的商品 ID 和订单有库存的数量以及当前记录的时间。
五、用户表
用户表当中有一些字段,如用户 ID ,用户姓名,用户密码,手机号,积分,注册时间以及用户余额(将来在支付的时候可以使用余额去完成一个支付)。
六、用户余额日志表
有了余额,余额在扣减的时候做一个记录,这是用户余额记录日志的表,这里边有这些字段,如当前用户的ID,哪个订单使用了操作的余额,在操作余额的时候到底是下单在余额购款进行订单的退款把余额加上,记录一个操作的类型,一个是订单的付款,另一个是订单的退款,付款是减余额,退款是加余额,之后操作的金额以及日志的时间。
七、订单支付表
订单支付表其实记录支付的编号,针对哪一个订单去支付,支付的金额是多少,支付完之后更改一下状态,1代表未支付。2代表已支付。
八、MQ 消息生产表
消息分为两个,一个是消息生产方,生产消息的时候去记录一下当前的信息,里面就包含主键,生产者的组名,消息的主题,Tag 以及 Key,消息的内容,消息是否处理,0代表未处理,1代表已处理,最后一个记录时间。
九、MQ消息消费表
消息的消费方有消息的 ID ,消费者的组名,Tag,业务 Key,消息体,当前处理状态,消费的次数以及消费的时间。消费的次数是消费方在进行消费时候可能第一次消费失败了,但允许第二次消费,总共允许消费三次,记录一下当前消费的次数。
最后的字段 remark 是备注,也就是额外的信息备注一下。
十、总结
总共有九张表,可以在数据库当中先创建出来,在创建的时候可以打开资料,里面有一个 shop 执行文件,使用客户端连接,之后创建一个数据库,把文件当中的内容复制过来,选中执行再等待执行完成。