收藏
回答

云数据库中的_id 怎样设置为 int?

云数据库中的_id 怎样设置为 int?

很多功能都是基于ID进行分页查询的,是否有这个功能?

回答关注问题邀请回答
收藏

2 个回答

  • 拾忆
    拾忆
    2020-06-21

    云开发数据库不是MYSQL,不建议用自增字段。如果你非要就参考这个

    // 基于base62编码生成14位的ID字符串
    // 优点:短/按时间序/双击可全选/唯一性足够安全
    function getId() {
      var ret = ''
      var ms = (new Date()).getTime()
      ret += base62encode(ms, 8) // 6923年循环一次
      ret += base62encode(Math.ceil(Math.random() * (62**6)), 6) // 冲突概率为每毫秒568亿分之一
      return ret
    }
    let codeStr = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
    function base62encode(v, n){
      var ret = ""
      for(var i=0;i<n;i++){
        ret = codeStr[v%codeStr.length] + ret
        v = Math.floor(v/codeStr.length)
      }
      return ret
    }
    


    2020-06-21
    有用 2
    回复
  • Admin ²º²⁴
    Admin ²º²⁴
    2020-06-21

    理论上讲Mysql的id功能用云数据库也是完全可以实现的哈。

    所以没有必要强制一定要用int型的id

    2020-06-21
    有用 1
    回复
登录 后发表内容
问题标签