700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 生成10位由大小写字母和数字组成的随机激活码

生成10位由大小写字母和数字组成的随机激活码

时间:2023-09-06 17:18:30

相关推荐

生成10位由大小写字母和数字组成的随机激活码

生成10位由大小写字母和数字组成的随机激活码

/*select char(65+ceiling(rand()*25)) --随机字母(大写)select char(97+ceiling(rand()*25)) --随机字母(小写)select cast(ceiling(rand()*9) as varchar(1)) --随机数字 1至9的随机数字(整数)*/DECLARE @i int DECLARE @flag intDECLARE @SerialNumber nvarchar(20)--初始化设定SET @i=1SET @SerialNumber = ''--生成10位随机码WHILE @i<11BEGIN--设置随机,这个随机会选择字母(大小写)还是数字SET @flag=ceiling(rand()*3) IF @flag=1 BEGIN--随机字母(大写)select @SerialNumber=@SerialNumber+char(65+ceiling(rand()*25))ENDelse if @flag=2begin--随机字母(小写)select @SerialNumber=@SerialNumber+char(97+ceiling(rand()*25))endelse begin--随机数字 1至9的随机数字(整数)select @SerialNumber=@SerialNumber+cast(ceiling(rand()*9) as varchar(1))end--进行下一个循环SET @i=@i+1ENDSELECT @SerialNumber as '生成的10位激活码'

---但是有的时候需要前面几位必须是纯英文字母,后面几位纯数字或随意字母和数字

/*select char(65+ceiling(rand()*25)) --随机字母(大写)select char(97+ceiling(rand()*25)) --随机字母(小写)select cast(ceiling(rand()*9) as varchar(1)) --随机数字 1至9的随机数字(整数)*/DECLARE @i int DECLARE @flag INTDECLARE @SerialNumber nvarchar(20)--初始化设定SET @i=1SET @SerialNumber = ''--生成10位随机码WHILE @i<11BEGIN--设置随机,这个随机会选择字母(大小写)还是数字SET @flag=ceiling(rand()*3) IF @i < 6 --前五位是字母BEGINIF @flag=1 BEGIN--随机字母(大写)select @SerialNumber=@SerialNumber+char(65+ceiling(rand()*25))ENDELSE BEGIN--随机字母(小写)select @SerialNumber=@SerialNumber+char(97+ceiling(rand()*25))ENDENDELSE BEGIN --后面几位是字母或数字IF @flag=1 BEGIN--随机字母(大写)select @SerialNumber=@SerialNumber+char(65+ceiling(rand()*25))ENDelse if @flag=2begin--随机字母(小写)select @SerialNumber=@SerialNumber+char(97+ceiling(rand()*25))endelse begin--随机数字 1至9的随机数字(整数)select @SerialNumber=@SerialNumber+cast(ceiling(rand()*9) as varchar(1))endEND--进行下一个循环SET @i=@i+1ENDSELECT @SerialNumber as '生成的10位激活码'

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。