2016-04-21 49 views
0

,我希望通过我们的数据和有一个在我们的Oracle数据库表中,显示了极少数的Oracle SQL Developer中关系两个一到多的关系:http://i.stack.imgur.com/icGcV.png表显示了两个:“一对多”

我不知道为什么会发生这种情况,是否应该考虑更改或修复?

(我没有创建这个数据库,我只是想了解它!)

+0

图像只显示两个箭头。你需要包含比这更多的细节。 –

+0

我还能展示什么?我不想自己张贴表格,我只想了解为什么有些表格会与两个这样的关系相关联,而另一些则不会。 – neongreenfruit

回答

1

的评论太长了,让我们看到一个很简单的例子:

CREATE TABLE persons 
(
    id  NUMBER PRIMARY KEY, 
    name VARCHAR2(10) 
) 
/ 
CREATE TABLE marriages 
(
    wife  NUMBER  REFERENCES persons(id), 
    husband NUMBER  REFERENCES persons(id) 
) 
/ 
CREATE TABLE dogs 
(
    id  NUMBER PRIMARY KEY, 
    name  VARCHAR2(10), 
    owner NUMBER  REFERENCES persons(id) 
) 
/

这里有一个表有两个不同的FK到同一张桌子。同一时间,你有另一个单一的FK表到同一个表。 所以,这不是一个问题需要解决,而是需要理解DB设计的一部分; 你的数据库可以设计得很好或不好,但是这种情况的存在并没有说明这一点。

+0

好吧,让我看看我是否理解,这仅仅发生在数据库模型中,因为从一个表到另一个表有多个外键。这是有道理的,如果我正确理解 – neongreenfruit

+0

你是对的。这甚至可能是一个糟糕的设计,但这是另一个问题...... – Aleksej