這篇文章是對訂單商品資料模型進行分析(會給出分析思路),有四張表。這篇文章是後續文章的基礎,因為後續的文章要針對這個資料模型(四張表)進行一對一,一對多,多對多進行查詢。
我們以後會碰到各種各樣的資料模型,有些資料模型可能有上百張表,但是資料模型的分析思路都是一樣的。所以這篇文章重點在於去掌握資料模型的分析思路。
我們先給出資料模型分析的思路:
1、每張表記錄的資料內容
我們分析表的時候,可以分模組(比如使用者管理模組,訂單模組等等)對每張表記錄的內容進行熟悉,這樣就相當於你學習系統需求(功能)的過程。
2、每張表重要的字段設定
每張表中哪些欄位是重要的呢:非空字段、外來鍵字段
3、資料庫級別表與表之間的關係
外來鍵關係
4、表與表之間的業務關係
在分析表與表之間的業務關係時一定要建立 在某個業務意義基礎上去分析。
接下來給出具體案例來分析:
mybatis的資料庫下面有四張表如下:
user表:
items:
orders:
ordersdetail:
介紹一下上面每一張表的用途:
user(使用者表):記錄了購買商品的使用者資訊。
orders(訂單表):記錄了使用者所建立的訂單。(購買商品的訂單)
orderdetail(訂單明細表):記錄了訂單的詳細資訊即購買商品的資訊。
items(商品表):記錄了商品資訊。
好:我們現在開始分析上面四張表:
1.我們先去找到上面四張表中每一張表重要的字段,外來鍵等。
我們經過觀察可以知道:
使用者表:user
id:自增主鍵
訂單表:orders
number:訂單號
user_id(外來鍵,使用者id)
訂單明細表:orderdetail
orders_id(外來鍵,訂單id)
items_id(外來鍵,商品id)
商品表:items
id:自增主鍵
2.我們再去分析資料庫級別有關係的表之間的業務關係。
由上面的主鍵,外來鍵之間的聯絡,我們知道user表和orders表,orders表和orderdetail表,orderdetail表和items表有資料庫級別的關係
usre和orders:
user---->orders:乙個使用者可以建立多個訂單,一對多
orders--->user:乙個訂單只由乙個使用者建立,一對一
orders和orderdetail:
orders---》orderdetail:乙個訂單可以包括 多個訂單明細,因為乙個訂單可以購買多個商品,每個商品的購買資訊在orderdetail記錄,一對多關係
orderdetail--> orders:乙個訂單明細只能包括在乙個訂單中,一對一
orderdetail和itesm:
orderdetail---》itesms:乙個訂單明細只對應乙個商品資訊,一對一
items--> orderdetail:乙個商品可以包括在多個訂單明細 ,一對多
3.等上面的有資料庫級別表分析好孩子後,我們最後再去分析資料庫級別沒有關係的表與表之間有沒有業務關係。
orders和items:
orders和items之間可以通過orderdetail表建立 關係。
資料模型分析圖如下:
分析結束;
django商品分類及商品資料建模例項詳解
基類 商品類及分類類之間共同的字段 class basemodle models.model name models.charfield max length 32,unique true 商品分類狀態 1為上架 0 為下架 stat程式設計客棧us models.smallintegerfield...
mySQL建立簡單商品資料庫
from pymysql import connect class jd object 京東商品 def init self 開啟資料庫連線 self.conn connect host localhost port 3306,user root password mysql database ji...
jquery商品資料格式化
通過ajax獲取到的商品引數對應起來,商品引數標題對應商品引數詳情。獲取到的資料 最終效果 上 商品規格格式化資料 if result.data.info.spec name goods specs goods spec id i goods specs goods spec name v if r...