我有一个问题,我如何在我的数据库中设计几个表.我有一个表来跟踪分类,一个子类别:
TABLE Category CategoryID INT Description NVARCHAR(500) TABLE Subcategory SubcategoryID INT CategoryID INT Description NVARCHAR(500)
类别可能是电子产品,其子类别可能是DVD播放器,电视机等.
我有另一个表将要引用类别/子类别.是否需要引用SubcategoryID?
TABLE Product SubcategoryID INT -- should this be subcategory?
有没有更好的方式来做这个或是正确的方法?我不是一个数据库设计的人.如果重要的话,我使用sql Server 2008 R2.
解决方法
您的设计是合适的.我是一个数据库的人转向开发人员,所以我可以理解在一个表中有类别和子类别的倾向,但是KISS永远不会出错.
除非极端的表现或无限层次是一个要求(我猜不是),那么你很好.
如果能够将多个子类别与产品相关联,那么对于@ Mikael来说,您需要一个这样的设置,通过连接/相交表Product_SubCategory创建多对多关系:
CREATE TABLE Product (ProductID int,Description nvarchar(100)) CREATE TABLE Product_SubCategory (ProductID int,SubCategoryID int) CREATE TABLE SubCategory (SubCategoryID int,CategoryID int,Description nvarchar(100)) CREATE TABLE Category (CategoryID int,Description nvarchar(100))
希望有帮助…
埃里克·塔拉索夫