sql – 数据库设计问题 – 类别/子类别

前端之家收集整理的这篇文章主要介绍了sql – 数据库设计问题 – 类别/子类别前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个问题,我如何在我的数据库中设计几个表.我有一个表来跟踪分类,一个子类别:
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))

希望有帮助…

埃里克·塔拉索夫

猜你在找的MsSQL相关文章