不会产生负数的 ID 字段用 unsigned int 还是 signed int 更好?

2022-04-14 19:03:48 +08:00
 rv54ntjwfm3ug8

好像很少见用 unsigned int 做 ID 的,Google 了一下有人说 unsigned int 经常需要被转换会导致性能问题,而且 unsigned int 的数据范围太大被转换成 int 时有可能会溢出

1432 次点击
所在节点    数据库
5 条回复
westoy
2022-04-14 19:06:37 +08:00
unsigned int 是 mysql 专属的啊, 以前用 mysql 手动建表的蛮多的

后来用 ORM 或者各种 db 迁移工具维护表的多了, 这种单一数据库特性就用的少了
est
2022-04-14 19:09:08 +08:00
需要别人维护的,signed int 。

自己搞着玩的,非正式场景的,mysql 不用挪窝的,刚好就缺一半取值范围的,unsigned int
akira
2022-04-14 19:29:37 +08:00
金币变成 -1 不会死人,但是变成 FFFFFFFF ,那是会出人命的
leonhao
2022-04-15 10:02:55 +08:00
unsigned int 是 MySQL 的一大神坑,老老实实用 bigint
msg7086
2022-04-15 10:22:36 +08:00
无脑 bigint ( int64 )。

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

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

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

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

© 2021 V2EX