gpt4 book ai didi

database-design - 使用复合键?还是总是使用代理键?

转载 作者:行者123 更新时间:2023-12-03 21:09:20 25 4
gpt4 key购买 nike

Duplicate: Many to Many Relation Design - Intersection Table Design



如果我有这些表(* = 主键):
user
id*
name

group
id*
name

这是否更好?
user_group
user_id*
group_id*

或者这样更好?
user_group
id*
user_id
group_id

最佳答案

我总是投票给尽可能窄的、静态的(永远不会改变)的键,因此我通常更喜欢代理 INT 作为键而不是复合键。

如果你想从另一个表中引用一个复合键,你总是必须指定几个条件 - 这有时会变得非常笨拙!

另请查看其中一些链接:

  • http://www.agiledata.org/essays/keys.html
  • http://rapidapplicationdevelopment.blogspot.com/2007/08/in-case-youre-new-to-series-ive.html

  • (当然,其他人可能会发布至少 10 个链接 PRO 自然键:-))

    使用代理键没有坏处——去吧! :-)

    马克

    关于database-design - 使用复合键?还是总是使用代理键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1029485/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com