我們有一個數據庫,用於記錄生產過程中某些產品的測試結果(記錄日期時間,產品序列號和測試結果)。如何做這個數據庫修改? (外鍵與否)
當產品被包裝時,我們每個盒子有多個產品,現在我們要記錄什麼產品在什麼盒子裏。
Box表格將添加ID和我們需要的任何其他列。 BoxID列將被添加到產品表中。然後我們有2個選擇:
1)使BoxID成爲鏈接到表格中ID列的外鍵。這有點難看,因爲我們必須創建一個特殊的包裝盒(ID爲0或其他),它將包含所有現有的產品,因爲我們沒有它們的信息,但是一些BoxID是必需的,因爲它是一個外鍵。
2)使BoxID爲空並且不要使其成爲外鍵。 BoxID的現有產品將爲NULL,這是正確的,因爲我們沒有這些信息,但它有點難看,因爲它沒有強制執行新產品的參照完整性。
我們應該選擇哪種解決方案?還是我們應該做點別的?
除了在產品編號的唯一密鑰應該強制執行該產品不能放成兩框。 – bummi