我有一张桌子employee,他们每个人都可以扮演不同的角色,比如inspector和 constructor 。我还有另一张桌子,上面有一列,我可以在其中存储检查员在工作中的内容。
人们可以扮演不同的角色,但角色不一定要动态添加;为员工的每个角色设置一列就足够了。这也很方便,因为我们目前资源有限,而我们的用户使用 Postico 来维护数据(目前),因此最好使用简单的数据模型。有了外键,我们可以使用 Postico 的 1:N 选择器。
我试图为(物化)视图创建外键约束,但这不受 Postgresql 支持。此外,不允许使用以下外键:
FOREIGN KEY("inspector_id", TRUE) REFERENCES employee("id", "is_inspector")
Run Code Online (Sandbox Code Playgroud)
除了在多个表中复制数据之外,我还有其他选择吗?
postgresql ×1