我已經下面列出四個表:以下狀態表數據庫設計
出貨
- ShipmentID(PK)
- OtherShipmentInfo
ShipmentStatus
- StatusID(PK)
- 狀態說明
ShipmentStages
- ShipmentStageID(PK)
- ShipmentID(FK到出貨)
- StatusID(FK到ShipmentStatus)
- DateTime
DeliveryCodes
- DeliveryCodeID(PK)
- DeliveryCodeDescription
我的問題是哪些表 「更合適」 來存儲與貨物的最終狀態信息?如果僅在最終裝運階段時需要記錄交貨代碼,我應該在ShipmentStages
表中使用外鍵還是將外鍵置於Shipments
表中,並且只在最後階段時更新該外鍵?
因爲DeliveryCode
只與最終出貨狀態有關,所以如果我將外鍵放在ShipmentStages
表中,則大多數條目將具有NULL值。
我覺得任何一種情況都會「起作用」,但哪一種更「合適」?
請不要使用不適用於您的問題的標籤。我刪除了數據庫標記,因爲它不清楚你實際使用了哪一個。請僅添加*的標籤*您實際使用的數據庫 –
道歉混淆。我已編輯帖子,只包含適當的標籤。 – wamaral
根據不正確的貨件被退回和轉運,是否可以有多次交貨?這一切都將被附加到相同的貨物或每個將是一個單獨的項目? – HLGEM