大家的数据库主键 ID 是用什么?

2020 年 4 月 23 日
 zealinux
  1. 自增长的 Long 或 Int
  2. UUID
  3. 自己代码生成插入 String

或者其他更好的方案


我喜欢用 UUID,这样每次合并数据时没那么痛苦。

5719 次点击
所在节点    数据库
39 条回复
CCIP
2020 年 4 月 23 日
雪花算法
FanError
2020 年 4 月 23 日
用 UUID,不过一直看别人说性能不好。
我寻思着接触的项目应该数据量或对性能的要求还没达到要在这个 UUID 上榨性能的地步,就没管了。
asAnotherJack
2020 年 4 月 23 日
自增,索引的原理 用自增的好
tabris17
2020 年 4 月 23 日
那还不如 snowflake
Cmdhelp
2020 年 4 月 23 日
这个还是看应用环境吧,
ytmsdy
2020 年 4 月 23 日
自增,毕竟时不时查数据,看 ID 的时候,长长的 UUID 看多了眼镜会瞎。
MeteorCat
2020 年 4 月 23 日
自增 ID,很多项目都达不到研究选用什么主键 ID 的地步,按照最简原则选择最容易的
U7Q5tLAex2FI0o0g
2020 年 4 月 23 日
量大再考虑性能。
量少,喜欢用什么就用什么
arthas2234
2020 年 4 月 23 日
这个要看表的作用啊,难道订单、用户、客户数据也用自增?
ajaxfunction
2020 年 4 月 23 日
一直是自增,目前最悠久的一个项目自增到 90 万
Veneris
2020 年 4 月 23 日
雪花算法,自增,不连续,全局无重复。
但是太长,有没有满足以上三条但短一些的。
gjquoiai
2020 年 4 月 23 日
littlewing
2020 年 4 月 23 日
@arthas2234 是的,都用自增,然后订单、用户、客户 id 加索引
akira
2020 年 4 月 23 日
表主键 ID 用自增,原则上不参与任何业务逻辑,放着好看的。
业务 主键 用 uuid
gz911122
2020 年 4 月 23 日
@arthas2234 是的 都用自增,恭喜你猜对了
xsm1890
2020 年 4 月 23 日
innodb 自增
jzmws
2020 年 4 月 23 日
无脑推荐雪花算法 太香了
newtype0092
2020 年 4 月 23 日
@arthas2234 用啊
Hanggi
2020 年 4 月 23 日
自增加 hash
newtype0092
2020 年 4 月 23 日
@arthas2234 哈哈你看这么多用的,小数据量的自增最高效,大数据量或着跨库的时候用自己定义的 id 就行,自增 id 也是要保留的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/665250

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX