我目前在SQL Server数据库中有两个连接表,其中一个包含新闻项目(newsTab)和一个表格(usrCom),它为每篇文章捕获多个用户评论。SQL是需要链接/桥接表吗?
我想添加另一个信息表(infoTab),它也允许用户评论,但我希望使用现有的评论表(usrCom)来存储这些信息。
我该如何去创建一个生成唯一ID的链接/桥接表,以便知道哪些表(newsTab/infoTab)注释属于哪个表。
NB:我编辑的消息,希望使它更清楚一点
第一个表(newsTab)
NewsId NewsContent
---------------------
1 blah blah
2 and so on
第二个表(infoTab)
infoId InfoContent
---------------------
1 some info
2 more stuff
评论表(与当前一样)
commentId linksTo Comment
------------------------------
1 1 user input
2 1 random rant
'linksTo'是第一个表中项目的foriegn键,所以我不能只添加一个类型列,并且如果在具有相同ID的新表中不存在一行,则会在外键列上发生冲突。因此,需要基于正在评论的表和Id来生成新的外键。
这是一个棘手的一个 - 我们有做类似的数据库,并且构建外键的时候,我们使用了'NOCHECK'选项。使其与巧克力茶壶一样有用,但确实表明餐桌之间存在关系。 – 2011-06-13 13:44:09
忘了说我不会为那些已经存在的评论感到困扰,所以可以重新开始,但我有一个中央评论表 – Spufferoo 2011-06-13 13:56:18
看起来像唯一的方法是合并新闻和信息表,并添加一个类型列到那张桌子。这样你就可以得到唯一的ID,你可以使用外键。 – 2011-06-13 14:20:33