【发布时间】:2018-07-02 13:55:33
【问题描述】:
我在 postgres 数据库中遇到了这个问题。 我有四个位置数据表(医院、学校、市场和警察局),它们之间略有不同,还有一个包含位置列的事件报告表,引用一个位置。
我如何才能对可以在任何位置表中的 id 进行此引用? 我试图引用它们的父表,但插入返回“表中不存在键”的错误
谢谢
【问题讨论】:
-
你的方法是正确的——你需要一个父位置表。这个错误究竟是什么时候出现的?
-
当我尝试在事件报告表中插入数据时。由于数据在子表中,dbms找不到父表引用的id
-
如果你使用 PostgreSQL 的继承,这是已知的限制postgresql.org/docs/current/static/…
-
不使用 PostgreSQL 的继承创建父表。然后你可以从所有的孩子和事件报告表中引用它。
标签: postgresql database-design