簡體   English   中英

數據庫設計問題:歷史記錄一致性

[英]Database design issue: History consistency

我不知道它用來定義此問題的用語是什么,讓我在這里用一個簡單的例子進行解釋。 我有一個productsorders表,其中ordersordered_products表具有一對多關系。

見表:-

products(id, sku, name, summary, price);

orders(id, code, customer_name, customer_address);
ordered_products(id, order_id, product_id, quantity);

生成訂單后,訂購的產品將列在ordered_products表中。 然后,該應用程序將在該實例處生成一張發票,並從products表中獲取價格參考。 發生問題! 當訂購的產品得到編輯時。 例如,如果在products表上編輯了名稱或價格,則訂單會受到影響,從而導致實際訂單不匹配。 這里有什么解決方案? 我是否需要復制ordered_items的值,而不是在此處使用外鍵引用?

訂單通常以約定的價格下單,因此下訂單后更改產品價格確實意味着您必須將ordered_price存儲在ordere_products表中。

暫無
暫無

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

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