我目前在SQL Server数据库中有两个连接表,一个包含新闻项(newsTab)和一个表(usrCom),它为每篇文章捕获多个用户注释。
我想添加另一个信息表(infoTab),它也允许用户发表评论,但我希望使用现有的评论表(usrCom)来存储这些信息。
如何创建生成唯一ID的链接/桥接表,以便我知道评论属于哪个表(newsTab / infoTab)。
注意:我编辑了这条消息,希望能让它更清晰一些
第一张表(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来生成新的生成的外键。
答案 0 :(得分:1)
为什么不只是usrCom的“类型”列
答案 1 :(得分:0)
如果您自动生成commentId(设置为主键),那么您将不会在usrCom表中获得任何重复项。此外,如果要为新闻和信息表保留一个表以供注释,则应添加一个新列以区分哪些表的注释(称为类型)。然后在查询中,确保指定要过滤结果的类型。
查看newsTab的所有评论:
select * from usrCom
where type='newsTab'