如有商品信息
-------------------------------
Pub_Type(商品大类)
TypeCode  TypeNamePub_Kind(商品分类)
TypeCode KindCode  KindName
-------------------------------
那么他的商品应该怎么来设计呢
1:
Pub_Product
TypeCode KindCode ProductCode ProductName2:
Pub_Product
KindCode ProductCode ProductName
--------------------------------
问题就在商品要不要保存他的大类
1保存了大类,方便对一个商品听大类查询而不用去通过KindCode再去找出大类,
但这样就会出现TypeCode有点多余,因为他是能通过KindCode的信息找出来的
2:和1相反谢谢大家怎么看

解决方案 »

  1.   

    商品分类一个表就行啦 
    ProductCategorycreate table ProductCategory
    (
      ID int identity(1,1) primary key,
      Title nvarchar(50),--产品分类名称
      parentID int,--父类ID
      Depth int--分级深度
      .
      .
    )
    应该这样设计的啊
      

  2.   

    关键看你要得到什么结果先 如果是查询子结点信息 可以设计成BOM结构 这个例子很多 论坛上也有 楼主可以自己去查查如果觉得比较麻烦 可以把表拆成1对N格式的 直接就可以查询 那么就是你的方法1 TypeCode确实没必要 
      

  3.   

    比如像我上面的公司部门员工的
    如果我要查询出公司A的员工的话
    用1:SQL为
     Select * From 员工 where 公司代码='A'
    用2:SQL为:
     Select * From 员工 a inner join 部门 b on a.部门代码=b.部门代码 where b.公司代码='A'
    谢谢