1

基本上,关系的标识和模态有什么区别?如果它们是相同的东西,为什么 MySQL Workbench 单独实现它们?

进一步说明:

我知道关系的标识意味着如果关系是非标识的,则引用表中的外键可以为 NULL,否则不能为 NULL;MySQL Workbench 实现了这个功能 OK 识别关系用粗线表示,而非识别关系用虚线表示。

直到现在,我确信模态(可选/强制关系)是一回事!但是 MySQL Workbench 完全独立地实现了模态。在 ERD 中,它由实体附近的“O”或“I”表示。它显示在这里

4

1 回答 1

4

不。

识别/非识别与子键有关。 在标识关系中,子记录只有在父记录存在的情况下才能存在。它标识子记录。标识关系在子表中是强制性的——它形成(全部或部分)子表的键。

非标识关系仍然可以是强制性的或可选的,只是子记录可以独立于外键存在。

强制/可选只是告诉您该字段是否必须具有值。这可能是外键字段,但不一定是。如果它是强制性的但不是外键,您可以将任何您希望的值放入列中(只要它满足其他约束);不可能null

于 2014-05-08T23:40:10.963 回答