文件类别表(文件类别ID,描述)
文件表(文件ID,文件类别ID,产品ID)
产品表(产品ID,文件ID)这样是不是有点复杂?
文件不一定只关联到产品,也可能关联到新闻主题,用户等。
如果在文件表里在增加一个字段目标主题ID,那就不好约束了。大家说说更好的办法。

解决方案 »

  1.   

    Class --大類
    Category--類別CategorySpec
    --不同的類型定義不同的規格
    Spec--規格產品 -->引用Category多一個表記表其它屬性
    引用-->產品ID /CategorySpecID/Value--值
      

  2.   

    实体要明确
    既然“文件不一定只关联到产品,也可能关联到新闻主题,用户等。”,产品id放在文件表就不合适
    产品表有个文件id不知道怎么考虑的需要的话增加一个关联表
    关联表(文件id,关联id,关联类别),其中关联类别规定好产品、新闻主题、用户等,产品、新闻主题、用户等的id用同一个数据类型。约束不一定放在数据库,数据库太多约束并不一定是好事。