商品庫存表設計
Netkiller MySQL 手札
MySQL MariaDB…
文件始創於2010-11-18
版權 © 2011, 2012, 2013 Netkiller(Neo Chan). All rights reserved.
版權宣告
轉載請與作者聯絡,轉載時請務必標明文章原始出處和作者資訊及本宣告。
|
|
$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表中,例如不同顏色售價不同。
相關文章
- 商品 分類 屬性 表設計 庫存
- 資料庫表設計之儲存引擎資料庫儲存引擎
- 歷史庫存監控表的設計
- 倉庫系統(2)-商品庫存/庫位管理
- 商品模組設計
- 動態表單儲存設計
- 資料庫表設計資料庫
- 電商系統商品資料表設計分析與總結
- B2B2C商品模組資料庫設計資料庫
- MySQL庫表設計小技巧MySql
- 庫存分析報表
- 資料庫設計:儲存過程資料庫儲存過程
- (2) 電商資料庫表設計資料庫
- SAP 庫存價值表
- 服務端指南 資料儲存篇 | MySQL(08) 分庫與分表設計服務端MySql
- 優惠劵系統庫存設計淺談
- 【高併發寫】庫存系統設計
- 進銷存系統資料庫設計資料庫
- 商品SKU表SQLSQL
- PHP高併發情況下防止商品庫存超賣PHP
- 電商系統設計之商品 (上)
- 電商系統設計之商品 (中)
- 電商系統設計之商品 (下)
- 分庫分表架構方案設計架構
- 程式設計師面試之MySQL資料庫表的設計程式設計師面試MySql資料庫
- 資料庫設計:儲存過程主體資料庫儲存過程
- 資料庫設計之area區域表資料庫
- 報表資料分庫儲存
- 嚴選鎖定庫存的設計及發展
- SaaS架構:中央庫存系統架構設計架構
- 資料庫設計過程遇到的零散點記錄powerdesigner 資料庫設計 表設計資料庫
- 企業財務制度二--會計科目名稱和編號(一)1243 庫存商品(轉載)
- 專案資料庫表設計與建立模型資料庫模型
- MySQL 規範 (資料庫表設計規範)MySql資料庫
- 資料庫表設計三正規化資料庫
- 資料庫表設計正規化 筆記資料庫筆記
- 巢狀評論的資料庫表設計巢狀資料庫
- 關於資料庫表的設計步驟資料庫