【问题标题】:same fk in different tables hierarchally不同表中的相同 fk 分层
【发布时间】:2012-06-27 17:18:40
【问题描述】:

今天我有这个结构...

tableA.id

tableB.id tableB.tableAId (fk)

tableC.id tableC.tableBId (fk)

我在 tableC 中放一个 fk 引用 tableA 是否正确?如果我不这样做,我需要将 tableC 与 tableB 连接到 tableA。我告诉你要避免加入,并用好的做法来做所有事情。

【问题讨论】:

  • 连接没有任何问题,如果您正确索引,数据库旨在有效地使用连接。除非您遇到性能问题,否则不要进行非规范化,因为如果您不放置触发器以保持所有引用相同,则可能会彻底破坏数据的活力。

标签: mysql database foreign-keys


【解决方案1】:

多个外键绝不是坏事。如果表 A 和表 C 之间存在关系,并且您需要提取与两者相关的数据而不一定需要表 B,那么在 A-C 之间有一个外键就可以了!

【讨论】:

    猜你喜欢
    • 2021-09-21
    • 1970-01-01
    • 2017-09-27
    • 1970-01-01
    • 2020-05-25
    • 1970-01-01
    • 2020-09-11
    • 1970-01-01
    • 2013-03-15
    相关资源
    最近更新 更多