電子商務資料庫設計

來源:互聯網
上載者:User
自學編程,想設計開發一個購物平台。商品只有一種,但是分為不同的類型,這個資料庫該怎麼設計呢?比方說書
書:
id: int
name: string
description: text
price: decimal
cover_image: string
書可以按照不同的條件來篩選,比方說按照分類,或者是按照書籍語言,發布時間,價格等等。。是設計一個category表
id: int
name: string
然後分別建立不同的category,然後讓一本書歸屬於這些不同的category呢,還是把這些資訊寫入程式碼到書資料表中
id: int
name: string
description: text
language: string
type: string
price: decimal
正確的做法應該是怎樣的呢?

回複內容:

自學編程,想設計開發一個購物平台。商品只有一種,但是分為不同的類型,這個資料庫該怎麼設計呢?比方說書
書:
id: int
name: string
description: text
price: decimal
cover_image: string
書可以按照不同的條件來篩選,比方說按照分類,或者是按照書籍語言,發布時間,價格等等。。是設計一個category表
id: int
name: string
然後分別建立不同的category,然後讓一本書歸屬於這些不同的category呢,還是把這些資訊寫入程式碼到書資料表中
id: int
name: string
description: text
language: string
type: string
price: decimal
正確的做法應該是怎樣的呢?

,請注意這只是一個可行的方案,並不是唯一解
(price單位建議用分,用int儲存,避免浮點數精度問題)

語言,或者其它雜七雜八的屬性你可以放到property屬性工作表,然後具體書是否具有哪個屬性在book_property裡面加一行記錄
分類因為展現比較頻繁,所以單獨列出,考慮一個關聯表book_category的原因是不知道是否允許一本書出現在多個分類裡面,如果一本書限死一個分類,那這個book_category可以省略,book表加一列category_id

另外,高階的搜尋和篩選功能你需要搜尋引擎,Elastic Search, Sphinx, Xunsearch,Solr等等,你用MySQL一方面效能太差另一方面SQL太複雜,稍微深入之後你可以試著接入

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.