Facebook 的用户 ID 上升到 2^32 .. 据我计算,它是 4294967296。
mySQL 的 unsigned int 范围是 0 到 4294967295(短 1 - 或者我的数学错误) 其无符号大整数的范围是0到18446744073709551615
int = 4 字节,bigint = 8 字节
或
我是否将其存储为字符串?
varchar(10) = ?字节
它将如何影响效率,我听说mysql句柄的数字比字符串好得多(性能方面)。那么大家有什么推荐的
最佳答案
因为 Facebook 分配 ID,而不是您,所以您必须使用 BIGINT。
Facebook 不会按顺序分配 ID,我怀疑他们有一些分配号码的机制。
我最近修复了这个错误,所以这是一个真正的问题。
我会把它设为 UNSIGNED,仅仅是因为它就是这样。
我会不使用字符串。这使得比较很痛苦,并且您的索引比他们需要的更笨重。
关于mysql - Facebook user_id : big_int, 整数还是字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2172126/