我试图在推文和作者之间创建一个相当复杂的关系。在我的系统中,我有3个来源可以与推文(团队,球员和人)相关。问题是,不是在每条推文中都有teamId,personId和teamId,而且只有其中一个不是null。我已经提出了一个名为created
的关系表的解决方案。但问题是,我不确定是否可以从sourceId创建外键到团队,玩家和人员表中的所有3个ID?为了为这种类型的系统创建正确的表结构,我该怎么办?
要进一步解释Created表,它包含空闲列:
id =主键和auto_increment
sourceType =枚举可以是(人员,团队或玩家)。通过这样做我知道它是一个人,团队还是玩家
sourceId =是特定人员,团队或玩家的ID。
球员
id
name
image
twitter_user
teamId
小组
id
name
twitter_user
人
id
name
image
twitter_user
teamId
资料Tweet ID 创建 文本 createdId
创建
id
sourcetype
sourceId