为更多类别创建表

时间:2012-10-09 13:17:43

标签: sql-server-2005

我需要知道使用此信息创建表的合适方法:ID, 类别,子类别。

该类别有更多的子类别,但我也可以在将来添加新的子类别,我尝试创建两个类别和子类别的表格,但是当我需要添加时,我将面临一个至关重要的问题一个新的子子类别。

那怎么能解决这个问题呢?

2 个答案:

答案 0 :(得分:0)

您不需要超过2列。

您只需要一个主键(ID)和一个外键(Parent ID)

CategoryID_PK       INT
ParentCategory_FK   INT

使用此设置,您可以拥有无​​限数量的级别

答案 1 :(得分:0)

由于您需要添加子子类别等,因此您只需要使用categories创建一个ParentCategoryID个表,例如:

<强> Categories

  • Id
  • Name
  • ParentCategoryID

然后,您可以使用CTE的递归查询来获取每个子类别的任何类别层次结构树。