簡體   English   中英

了解弱實體和弱關系

[英]Understanding Weak Entities and Weak Relationships

如果我具有以下ERD:

 ------
|Inv   |
---------
   1

   |
 <<contains>>

   |
   m
--------
--------                             ---------
||Line  ||  1 --- <<has a>> --- 1  | prod     |
--------                            ----------
--------

如果Line是一個弱實體,並且containshas a弱關系,那么Line的主鍵會是什么樣?

我一直在網上尋找,我想這將是一個復合主鍵,其中包括:

PK = (ID from line, Primary Key from Inv, Primary Key from Prod)

誰能幫我嗎? 我對嗎? 我哪里出問題了? 等等

我一直在網上尋找,我想這將是一個復合主鍵,其中包括:

PK = (ID from line, Primary Key from Inv, Primary Key from Prod)

否,來自Inv的主鍵和行項目號足以識別表“行”中的行。 如果您要實施進一步的業務需求(每個產品每個發票只能出現一次),則可以對兩列{Inv的值,Prod的值}進行附加的唯一約束。

實際上,我不會在“ Inv” “ Line”中使用自動遞增的id號。 自動遞增ID號可能會留下空白,並且會計師討厭空白。 通過擴展,數據庫人員也討厭這些數字之間的差距。 (我們是因“缺少”行而受到指責的人。)

您還需要注意存儲產品的ID號。 如果產品名稱更改,則所有過去的發票上的名稱都會更改。 這是站在法庭上不利於法官的好方法。

暫無
暫無

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

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