在MySql中为主键生成随机值

在MySql中为主键生成随机值,mysql,uuid,Mysql,Uuid,使用UUID在具有唯一约束的列中生成随机值是否足够 或者我们应该向UUID附加类似于当前时间戳的内容 或者,有没有更好的方法为sql列生成随机但唯一的值。用任何语言生成随机数都是一个用词不当的问题。这些数字是伪随机的。这意味着不完全是100%随机的 还可以考虑生成1-5范围内的随机数。您可能会得到生成相同编号的重复项。或者,如果生成的数字超过5个,则绝对会有重复的数字 如果字段仅从一个位置更新,则时间戳往往是一个好的UUID。但是你也需要担心一些事情,比如确保它的格式正确。尤其是在语言/技术之间

使用UUID在具有唯一约束的列中生成随机值是否足够

或者我们应该向UUID附加类似于当前时间戳的内容


或者,有没有更好的方法为sql列生成随机但唯一的值。

用任何语言生成随机数都是一个用词不当的问题。这些数字是伪随机的。这意味着不完全是100%随机的

还可以考虑生成1-5范围内的随机数。您可能会得到生成相同编号的重复项。或者,如果生成的数字超过5个,则绝对会有重复的数字

如果字段仅从一个位置更新,则时间戳往往是一个好的UUID。但是你也需要担心一些事情,比如确保它的格式正确。尤其是在语言/技术之间发生变化时


对于用户ID,为什么不使用值自动递增列?从某个地方开始列并从那里开始递增。我会在列表的开头留下一些数字,以便在测试/管理需要它们时,尽早找到一些空数字。

UUID在99.9999%的所有用例中都足够了。(甚至更多的9)“…主键…”难道自动递增还不够吗?我希望它们是随机的。用户不应该猜到其他用户的Id。但为什么会这样呢?因此,您正在创建一个完美的模糊安全示例。猜测ID不能授予任何访问权限。