2012-03-30 85 views
0

所以我不知道这是否可以接受。数据库设计如何参考表

我有以下表格:DocumentContent Reviewers

Content_Reviewers具有字段:cr_idfk_ProductIDfk_DocumentIDNameContactInfo

1, 1, 3, 'Derek', '555-555-5555 Lives in Washington' 
2 3, 35, 'James', 'California' 

文件具有字段:doc_idfk_productIDsectionNameparentIDtext

1, 1, 'Title', 0, '' 
2, 1, 'Contributors', 0 'People who helped in some fashion' 
3, 1, 'Editors', 2, 'People who helped edit the document' 
... 
35, 4, 'Editors', 33, 'People who helped edit the document' 

所以我试图做到的是,我可以有很多产品,部分或全部产品可能有Editiors或贡献者部分。如果他们这样做,我希望能够将“Content_Reviewers”表与该部分关联起来。

所以我的第一个倾向是:

  1. 安装一个新的栏目表,以避免'SectionName''Text'重复
  2. 添加一个新列如TableDataDocument,将包含表关联的名称它? Content_Reviewers? (这是我不知道如何做得很好)

这个想法是可能有至少有十几个部分与他们自己的单独的表与该部分相关联,但并不一定总是在产品中可用。

谢谢。

回答

0

这是一个多对多的基数。应该创建一个链接表

例如: 文件表,有ID 产品表,有ID

创建document_product表 fk_Document.id fk_Product.id ,使双方fk_Document组合唯一的密钥。 id和fk_Product.id以确保没有重复。