0

我正在使用带有 mysql 数据库的 Rails Web 应用程序,我需要为表中的每条记录自动保存 10 位唯一数字/字母数字。该表可能包含超过数百万条记录(将来)

要求

  1. 只能从mysql数据库生成一个10位的唯一编号,并且生成的编号不能小于10位
  2. 我还参考了 mysql 的 uuid() 和 uuid_short() 方法,它们返回一个通用的唯一 id,但这些返回超过 10 位数字。
  3. 如果生成的唯一编号不是按顺序排列的,那么它会好很多(无法预测访问其他记录,例如下一个或上一个记录)。

注意

  • 我不认为通过手动生成唯一 id 更好(应用一些逻辑,如时间戳、record_id 等的组合),因为需要额外的查询来检查表中的唯一性。
4

0 回答 0