我们有多个类别层次结构,其中类别可以嵌套 N 级深度,并且我们的产品可以属于多个层次结构中的多个类别。我和我的同事在什么是最好的表结构上存在分歧。
他的结构是:
Nodes
---------------------------
NodeId (identity)
ParentNodeId (nullable)
ProductId (nullable)
Description (this is the category or product description)
我的结构是:
Categories
-----------------------------
CategoryId
ParentCategoryId (nullable)
Description
ProductCategories
-----------------
CategoryId
ProductId
两者都会假设也有一个产品表
Products
-------------------
ProductId
ProductDescription
UnitPrice
etc...
所以基本上,他通过在表中添加另一条记录来跟踪每个类别中的产品Nodes
,而我会在表中创建一条新记录ProductCategories
。他说他的方式对性能更好,这是微软推荐的方式。任何人都可以验证这一点吗?是否有任何性能或维护问题可以让我们选择其中一个?有数百个类别和数万种产品。
谢谢。