云数据库中的_id 怎样设置为 int?
云数据库中的_id 怎样设置为 int?
很多功能都是基于ID进行分页查询的,是否有这个功能?
2 回复
云开发数据库不是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
}