Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
是否将外键设置为父表费用的代理?
因为我必须加入那个父/引用表来显示自然键。
但是为什么最好将外键设置为引用表的代理。
从某种意义上说,在某些不需要使用自然键的情况下需要 JOIN (正如您已经指出的那样),这是昂贵的。此外,自然键通常更适合聚类,并且有时对于正确建模菱形依赖关系是必需的。
另一方面,使用“更瘦”的代理键可以节省一些空间并简化更新(尤其是当有多个 FK 级别时)。
这两种方法都不是绝对“更好”的——这是一个妥协的问题。