【发布时间】:2018-04-17 14:24:36
【问题描述】:
我目前正在使用用于社交媒体应用程序的数据库。数据库在postgresql上运行,我遇到了逻辑问题。
我有两种不同类型的内容可以提交,主题和帖子。每个都有自己的主键。
所有这些都有项目可以附加一些媒体。在我的媒体表中,我有 content_type_id 和 content_id 列,其中 content_type 是具有不同类型内容的查找表中的键,而 content_id 是存储特定内容的表中的主键。
我遇到的问题是我无法在 content_id 上创建外键,因为根据 content_type 它可能引用两个表之一。有没有办法可以设置外键来根据 content_type_id 列的值查看正确的表?
【问题讨论】:
-
请提供您的表格 DDL。
-
闻起来像糟糕的设计。参见例如stackoverflow.com/questions/13311932/…
标签: sql postgresql design-patterns database-design