数据库标记结构

数据库标记结构

问题描述:

我在我的数据库中有三个表。新闻,评论和教程。我想实现标记功能。数据库标记结构

我已经通过一个标记表来定义我的标记,以及一个类型为(新闻,教程,评论),itemId和tagId的查找表。

这工作得很好,但是对于我的新网站,我希望在表格之间有PK PK关系(因为我正在使用linq到实体)。

我该怎么做?标签查找表不能成为新闻,评论和教程的外键,因为当我向查找表中添加一行时,所有三种类型都需要存在一个值!

最好的方法是什么?

你可以试试这个:

News 
NewsID  int auto increment/identity pk 
.... 

Reviews 
ReviewID int auto increment/identity pk 
.... 

Tutotials 
TutorialID int auto increment/identity pk 
.... 

Tags 
TagID  int auto increment/identity pk 
..... 

TagUsage 
TagUsageID int auto increment/identity pk 
TagID   fk to Tags.TagID 
NewsID   allows nulls fk to News.NewsID 
ReviewID  allows nulls fk to Reviews.ReviewID 
TutorialID  allows nulls fk to Tutotials.TutorialID 
+0

呀,想到这一点。我想那是最好的方法呢?谢谢您的帮助! – Jack 2010-04-28 15:23:15