多表外键插入语句冲突

n3schb8v  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(278)

我有个问题:
数据库关系图

对象\u id是一个外键,引用5个表的“id”列。例如,我不能将第5条记录插入“connected\u nodes”表,因为在“klapan\u treh”表中第5条记录不存在,但在“ns”表中第5条记录存在。
我的解决方案是为每个表创建单独的列,如:ns\u id引用ns(id)、klapan\u treh\u id引用klapan\u treh(id)等。
但你有没有建议我另一种改进的方法?

jogvjijk

jogvjijk1#

我认为你提出的解决办法是最好的。您需要的是在连接的节点表中有5个独立的外键。其中每一个都指向另一个表中的id。我想这就是你的建议。
每个外键都可以是可选的(可以为null),因此如果您有4个连接的节点,那么您将填充4个外键,第5个外键为null。

相关问题