簡體   English   中英

MySQL中的產品和訂單表結構

[英]Products & Orders Table Structure in MySQL

我正在為一個電子商務系統設計一個數據庫,而我只是受制於這種情況。 我在想,如果站點管理員從后端刪除產品,那么與該產品相關的所有訂單也將被刪除。 如果刪除產品,防止這種情況發生的最佳方法是什么,那么它就不會打擾以前的訂單,因為我們必須同時顯示從產品表中提取的訂單中的產品詳細信息。

這是我目前擁有的三個表,並且還建立了外鍵關系。

Products

| product_id | name       |
| 1          | iphone 5s  |
| 2          | Samsung S3 |
| 3          | iphone 6s  |

Orders

| order_id   | customer_id   |  datetime   |
| 1          | 12            |  2015-08-15 |

Order_Product

| order_product_id   | order_id   |  product_id   |  qty | price  |
| 10                 | 1          |  2            | 1    | 300.00 |

謝謝

很少的選擇..

1>刪除產品不應真正刪除行,而應將產品標記為已刪除。 -首選


2>您可以使用產品表中的代理鍵作為訂單表所引用的主/唯一鍵。 當產品行被刪除時(如果必須的話),則對外鍵使用選項“ on delete set null”。 這里使用代理密鑰只是為了防止訂單表中的任何密鑰信息丟失。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM