我应该将XUID存储为BIGINT还是VARCHAR?

时间:2019-01-24 04:32:03

标签: c# mysql xbox-live

官方文档说Xuid是一个无符号的int64,但是我看到很多项目都将它当作一个字符串来对待,即使它们的项目语言具有无符号的int64数据类型,例如C#ulong

好吧,直截了当: 我必须将XUID存储在MySQL数据库上,我想知道将它存储为BIGINT还是VARCHAR(10)效率更高?

1 个答案:

答案 0 :(得分:0)

如果XUID是64位无符号整数,则它的值可以从0到18,446,744,073,709,551,615。因此VARCHAR(10)不够大;您将需要使用VARCHAR(20)

将它存储为BIGINT UNSIGNED(总是eight bytes)比VARCHAR(20)效率更高(并且使用较少的数据库磁盘空间)(最多21个字节,具体取决于假设列的位数为一个字节,则存储的数字大小。