mysql生成18位纯数字id_MySQL实现注册时随机生成数字id,类似于注册qq时随机生成qq号...
首先根据长度需求通过java的随机函数java.util.Random生成随机数,如希望得到5位随机id,则可以使用如下语句
int r = (new Random()).nextInt()%89999;
int id = 10000 + Math.abs(r);
第二步,检查数据库内是否已经存在该id。可以通过查询该id是否有结果来判断。如果不存在则直接插入,否则重新生成随机数。
以下为完整代码:
public void reg(String username, String password){
Connection conn = null;
PreparedStatement ptmt = null;
ResultSet rs = null;
try{
conn = DBHelper.getConnection();
while(true){
int r = (new Random()).nextInt()%89999;
int id = 10000 + Math.abs(r);
String sql = "select * from employee where id=?;";
ptmt = conn.prepareStatement(sql);
ptmt.setInt(1, id);
rs = ptmt.executeQuery();
if(!rs.next()){
sql = "insert into employee(id, employeename, psw) value"
+ "(?,?,?)";
ptmt = conn.prepareStatement(sql);
ptmt.setInt(1, id);
ptmt.setString(2, username);
ptmt.setString(3, password);
ptmt.execute();
break;
}
}
}catch(Exception ex){
ex.printStackTrace();
}finally{
if(ptmt != null){
try{
ptmt.close();
}catch(Exception ex){
ex.printStackTrace();
}
}
if(rs != null){
try{
rs.close();
}catch(Exception ex){
ex.printStackTrace();
}
}
}
}
mysql生成18位纯数字id_MySQL实现注册时随机生成数字id,类似于注册qq时随机生成qq号...相关推荐
- 生成6位纯数字验证码的三种方式
import java.util.Random;/*** @author lishengchen* @version 1.0* @Date 2020/11/26*/ public class Test ...
- mysql获取18位和15位身份证号中的出生日期、年龄
18位身份证号码 select cast(substring(idno,7,8) as date) as 出生日期,2022-substring(idno,7,4) as age from table ...
- Java 生成6位纯数字验证码 发短信验证码处使用
@Testpublic void randomCodeTest() {Random random = new Random();for (int i = 0; i < 10000; i++) { ...
- UUID生成10位纯数字
public static void main(String[] args) {int hashCode = java.util.UUID.randomUUID().toString().hashCo ...
- mysql用18位存储uuid_MySQL中存储UUID的最佳实践
在MySQL中有一个UUID () 函数,通常用UUID做唯一标识,需要在数据库中进行存储.使用此函数可以让MySQL生成一个UUID值,并以VARCHAR(36)类型的可读形式返回.如图1: 图1 ...
- mysql用18位存储uuid_Mysql 存储 UUID
参考: 通常用UUID做唯一标识,需要在数据库中进行存储. UUID的格式 [java] String string = UUID.randomUUID().toString(); System.ou ...
- php 生成18位uuid,php生成UUID
/** * Generates an UUID * * @param string an optional prefix * @return string the formatted uuid */ ...
- Java——随机生成4位验证码,由用户输入并验证是否输入正确,如果输入错误就生成新的验证码让用户重新输入,最多输入5次
引入包: import java.util.Scanner; import java.util.Random; main函数: public static void main(String[] arg ...
- Mysql 判断身份证号码是否满足15位或者18位
select * from user where cardno REGEXP '[0-9]{18}|[0-9]{17}X|[0-9]{15}'; 说明--使用正则判断,满足条件18位纯数字或者17位纯 ...
最新文章
- 一个java删除文件夹的小方法
- python语音控制智能家电_Python 树莓派智能音箱语音控制电脑开关机-Python 实用宝典...
- SAP Hybris的类型系统更改和ABAP的LOAD_PROGRAM_TABLE_MISMATCH
- python 浮点数最小值_PYTHON学习笔记(3)——基本数据类型
- 带你自学Python系列(十二):Python函数的用法(二)
- Flutter MouseRegion 链接高亮显示样式 只有你想不到 没有你做不到的
- Pwn2Own 三连冠团队成员访谈实录:如何才能登峰造极?
- 使用严格模式的坏处_再见面试官:单例模式有几种写法?
- 合成孔径雷达影像(SAR图像)变化检测深度学习研究方法
- 华为二层网络隔离与互通(vlan隔离与端口隔离)
- 裤子尺码对照表eur40_裤子的欧码32 34 36 38 40代表什么意思
- Kuma是什么? Kuma1.0 GA 发布了包含70+新特性和改进
- 查找对方IP地址技巧五招
- JavaScript 的时间使用
- 高频词 词云图 文本重心 聚类
- [图像处理]-Opencv中数据类型CV_8U, CV_16U, CV_16S, CV_32F 以及 CV_64F是什么?
- Thinkpad L440 无线驱动突然无法使用,无法搜索到无线上网
- IE8和IE9发送跨域请求
- Dive into Vue.js
- android控件ListView设置onClick事件