我正在爲商業商店構建數據庫。我正在辯論在數據庫中使用productID。ProductID vs數據庫中的條形碼
我還需要將交易記錄存儲在數據庫中。
使用productID或使用條形碼作爲我的產品的唯一標識符會更好嗎?
我正在爲商業商店構建數據庫。我正在辯論在數據庫中使用productID。ProductID vs數據庫中的條形碼
我還需要將交易記錄存儲在數據庫中。
使用productID或使用條形碼作爲我的產品的唯一標識符會更好嗎?
條形碼一般是不好的PK。由於它們將被存儲爲數據類型,因此您不想加入它們。產品ID可能是任何有子表的表的更好選擇。不過,您應該仍然可以在條形碼上添加一個唯一索引,沒有什麼能阻止具有唯一索引的多個事物。
這應該是「唯一約束」而不是「唯一索引」。 –
你可以同時使用嗎?沒有理由爲什麼產品不應該有多種類型的標識符。然而,視情況而定,產品可能有多個條形碼。對於零售包裝商品,爲同一產品配備多個不同的條形碼並不罕見。
你基本上有兩種選擇:
在第一種情況:
在第二種情況:
因此,它基本上是在少量或多個加入之間以及在「重底」或「頂重」存儲/高速緩存之間進行權衡。你只需要決定哪些適合你的預期數據訪問模式更好...
即通過FOREIGN KEY引用PRODUCT的表。一個TRANSACTION_HISTORY可能是一個這樣的表的例子。
你是什麼意思的「唯一標識符」?你打算如何使用它?什麼讓你認爲產品ID或條形碼將是獨一無二的? –