商品库存表设计

简介:

Netkiller MySQL 手札

MySQL MariaDB...

MrNeo Chan陈景峰(BG7NYT)


中国广东省深圳市龙华新区民治街道溪山美地
518131
+86 13113668890
+86 755 29812080

文档始创于2010-11-18

版权 © 2011, 2012, 2013 Netkiller(Neo Chan). All rights reserved.

版权声明

转载请与作者联系,转载时请务必标明文章原始出处和作者信息及本声明。

文档出处:
http://netkiller.github.io
http://netkiller.sourceforge.net

 

$Date: 2013-04-10 15:03:49 +0800 (Wed, 10 Apr 2013) $

 

商品库存表

		
+------------+              +----------------+               +------------------+
| product    |              | product_store  |               | user_order       |
+------------+              +----------------+               +------------------+
|id          | <--+         |id              | <---+         |id                |
|price       |    +--1:1--o |product_id      |     |         |user_id           |
|quantity    |              |sn              |     +--1:n--o |product_store_id  |
|...         |              |status          |               |                  |
|category_id |              +----------------+               +------------------+
+------------+
		
		

product 是产品表总表,product_store每个产品一条记录,同时将sn编号对应到物理产品,这时记录库存需要

select count(id) from product_store where product_id='xxxxx' and status = 'sell'
		

商品销售

begin;
select id from product_store where status = 'sale' and product_id='xxxxx' for update;
insert into user_order(user_id,product_store_id) values('xxxxxx','xxxxx');
update product_store set status = 'sold' where status = 'sale' and product_id='xxxxx';
commit;
		

售出的商品与用户的订单项一一对应的。

注意上面,这里使用了排它锁与事务处理,防止一个商品卖给两个人。

根据上面的思路我们可以将商品属性与product_store表进行一对一匹配,这样每个商品都有它自己的商品属性,甚至价格也可以移到product_store表中,例如不同颜色售价不同。

目录
相关文章
|
9月前
订单服务:订单流程
订单服务:订单流程
|
7天前
|
存储 数据采集 搜索推荐
商品比价系统实现
商品比价系统实现
宜搭,删除入库表如何更新库存底表,把删除入库表的数量加回底表库存中
删除入库表如何更新库存底表,把删除入库表的数量加回底表库存中
|
大数据 开发者
电商项目之交易订单明细流水表分析|学习笔记
快速学习电商项目之交易订单明细流水表分析
274 0
|
SQL 大数据 开发者
电商项目之交易订单明细流水表执行测试|学习笔记
快速学习电商项目之交易订单明细流水表执行测试
166 0
电商项目之交易订单明细流水表执行测试|学习笔记
购物车增减商品数量2-修改商品小计35
购物车增减商品数量2-修改商品小计35
82 0
购物车增减商品数量2-修改商品小计35
购物车增减商品数量2-修改商品小计3-35
购物车增减商品数量2-修改商品小计3-35
74 0
购物车增减商品数量2-修改商品小计3-35
购物车增减商品数量2-修改商品小计parents34
购物车增减商品数量2-修改商品小计parents34
74 0
|
供应链 关系型数据库 MySQL
Mysql 设计超市经营管理系统,包括商品信息表(goods) 和 商品类型表(goodstype)
Mysql 设计超市经营管理系统,包括商品信息表(goods) 和 商品类型表(goodstype)
622 0
Mysql 设计超市经营管理系统,包括商品信息表(goods) 和 商品类型表(goodstype)
SAP MM 销售订单库存与普通库存之间相互转换过账后对于EBEWH以及MBEWH表的更新
SAP MM 销售订单库存与普通库存之间相互转换过账后对于EBEWH以及MBEWH表的更新
SAP MM 销售订单库存与普通库存之间相互转换过账后对于EBEWH以及MBEWH表的更新