为产品或者商品随机生成6位数的数字编码方案

--为产品或者商品随机生成6位数的数字编码方案
--准备阶段
--建立一个表,生成100000到999999顺序编码
create table #no
(
 id int
)
declare @id int 
set @id=1
while(@id<=999999)
begin
 insert into #no values(@id)
 set @[email protected]+1
end
--建立随机编码表
create table RNo
(
 id int identity(1,1),
 no int
)
--插入随机内容
insert into RNo(no) select id from #no order by NEWID()
--模拟商品表
create table Product
(
 ProductId int identity(1,1),
 ProductNO int
 --其他字段
)
--插入产品表的时候,通过产品表的自增ID读取对应的随机数字编码更新到产品表即可实现随机的编码生成。
--避免了程序生成随机编码引起的2个小问题
 --1.每次生成都要做重复检查
 --2.后期随机编码容易重复,要继续随机生成。
--存在一个问题就是一旦删除产品后,编码将不能被再次使用。
declare @pid int
insert into Product(ProductName) values(‘土豆‘)
select @pid=SCOPE_IDENTITY()
--这里注意需要检查 rno 是否大于 999999 ,如果不够了 需要继续生成新的编码(增位了)
update Product set ProductNO=(select no from rno where [email protected]) where [email protected]
--检查结果
select * from Product

--ProductId   ProductNO   ProductName
----------- ----------- ----------------------------------------------------------------------------------------------------
--1           782264      土豆
--(1 行受影响)
时间: 2024-10-13 10:07:31

为产品或者商品随机生成6位数的数字编码方案的相关文章

python随机生成6位数验证码

#随机生成6位数验证码 import randomcode = []for i in range(6):    if i == str(random.randint(1,5)):        code.append(i)    else:       temp =  random.randint(65,90)       code.append(chr(temp)) print ''.join(code) ###扩充random用法,随机生成树,和程序无关 print random.rando

js随机生成N位数

function RondomPass(number){ var arr = new Array; var arr1 = new Array("0","1","2","3","4","5","6","7","8","9"); for(var i=0;i<number;i++){ var n = Math

python 之随机生成6位数验证码

#!/usr/bin/env python # -*- coding: utf-8 -*- #用于生成随机数的模块:random #函数chr()返回对应的ASCII字符,与ord()作用相反. import random #在1-100之间生成随机数 num = random.randint(1,100) #随机生成一个大写字母,ASCII码值65-90对应的是A-Z cap = chr(random.randint(65,90)) #随机生成一个小写字母,ASCII码值97-122对应的是a

随机生成6位数验证码

方法一: 1 import random 2 def generate_code(): 3 code_list=[] 4 for i in range(10): 5 code_list.append(str(i)) 6 for i in range(65,91): 7 code_list.append(chr(i)) 8 for i in range(97,123): 9 code_list.append(chr(i)) 10 mystlic=random.sample(code_list,6)

随机生成指定位数的验证码

import randomimport string # 方法一:def code_1(m, choice): code=''.join(random.sample(choice, m)) return code print(code_1(4, string.ascii_letters + string.digits)) # 方法二:def code_2(n): code='' for i in range(n): number=random.randint(0, 9) # 0-9 lower_

java 随机生成四位数验证码

public static void main(String[] args) { // TODO 自动生成的方法存根 Random r=new Random(); String str="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";//列出所有的字母数字 for(int i=0;i<4;i++)//循环4次,输出四个数 { int a=r.nextInt(62);//从0-61中随机一个数,作为字

随机生成6位数的 几种写法

方法1: var code=String(Math.random()).substr(2,6) 方法2: function getCode() { var code = ""; for (var i = 0; i < 6; i++) { code += parseInt(10 * Math.random()) } return code; } 一般Math.random()会生成如下形式的数据. 0.282916090451180930.61866902466863390.005

python3 随机生成6位数的验证码

要求是数字:0~9 及大小写字母. #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hiuhung Wan import random # 48--57 : 0-9 # 65--90 : A-Z # 97--122: a-z index = 6 count = 0 str1 = '' #存放验证码 while index > count: num = random.randrange(48,122) if (num <= 57) or

随机生成几位数

String[] beforeShuffle = new String[] {"1", "2", "3", "4", "5", "6", "7", "8", "9","10" }; List list = Arrays.asList(beforeShuffle); Collections.shuffle(li