与多个表的1:1关系的最佳实践架构

时间:2016-02-19 16:52:18

标签: sql postgresql schema

目前,我们有一条“消息”。一个名为" content_id"的列的表它与消息可以附加的任何内容建立1:1关系,这是多种其他类型的表数据。

例如,可以使用作为ID的主键将消息附加到另一个表行,并且可以将另一个消息与具有数据类型varchar(36)的主键的另一个表的行相关联,或者UUID。可能有更多的表可以将消息分配给其中一行,以及任何其他数据类型。

最后,消息只能与各种主键数据类型的任何一行中的一个消息相关联。

有没有一个更好的解决方案,比消息表中可以保存整数或uuid的单列varchar(36)?

如果我为每个关系使用连接表,我可以在连接它们的两列上放置一个UNIQUE索引以建立相同的关系。这种架构是否更有效率?

数据库是postgres,如果重要的话......

0 个答案:

没有答案