随机生成唯一的7位数字,作为用户的唯一标识 20C

0-9之间的数字,随机生成一个7位数,保存入数据库,此数据不能和以前的数据重复,唯一性

26个回答

比如id给他加个自增,位数不够前面补0,

document.write(Math.round(Math.random() * (9999999 - 0)) + 0);

用UUID然后截取7位数。或者自己写一个随机的程序然后每次存入库中判断库中是否存在,存在则重新生成,不存在则插入

random() + 遍历历史

我觉得你可以在数据库将这7位数设为主键,直接生成7位的随机数,存入数据库,用try/catch捕获异常,在catch处捕获异常信息是否是主键重复
catch (Exception e) {
if(e.getStackTrace().toString().equals("你可以先试一下主键重复报的异常信息字符串是什么,然后复制下来填在这里")){
//这里继续调用你的生成随机数存入数据库方法,或者记录你刚生成的随机数为key,直接+1往后找若加到8位则从key-1往前找,细致的算法问题你
//自己想着写吧、
}

e.printStackTrace();
}
整体思路就是这样,我觉得可行,你可以试试,成功了望采纳、

这个 肯定会重复 数据到一定的大小后... 用 采用大小写字母+随机数字 比较好

共26条数据 首页 1 3
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐