我正在爲我的項目構建一個簡單的銷售點系統。 該系統有一個名爲Sales的表和另一個名爲Item的表。 在Item表中將有一個名爲itemcode的列,它是一個主鍵。 在Sales表中將有一個名爲itemcode的列,它是項目表中的外鍵引用項目代碼。銷售與物品之間的簡單關係數據庫
問題是我應該使Sales表中的項目代碼引用項目表中的項目代碼的外鍵嗎?
如果是外鍵,如果此特定項目上有銷售,我無法從項目表中刪除特定項目。這是因爲Sales表中存在引用主鍵的外鍵。
如果它不是外鍵,當更新Item表中的項目代碼時,項目代碼不會更新。
解決此問題的任何提示?
謝謝,但我如何刪除項目表中的項目,如果該項目不再可用,但仍然需要維護銷售表中的記錄? – Boon
要正確建模,您可以執行以下兩件事之一:要麼單獨跟蹤庫存,要麼在項目表中添加一列表示可用性,並在站點上顯示項目的任何位置使用該列(即WHERE items.currently_available = TRUE) –
謝謝,我會試一試。 – Boon