至尊宝的传说
我写了一个SQL2005的create proc suijishu@weishu int,@hangshu intasdeclare @temp table(id int identity(1,1),zhi varchar(10))declare @js intdeclare @zhi varchar(10)declare @i varchar(10)declare @j intset @j=0while 1=1begin--唯一的随机数插入表@tempset @zhi=''while 1=1beginset @i =''set @j=round(rand()*10,0)--如果是10就置为0if @j>=10set @j=0set @i=rtrim(convert(varchar(10),@j))set @zhi=@zhi+@iif len(rtrim( @zhi))>=@weishubreakend--判断是否唯一if not exists(select * from @temp where zhi=@zhi)insert @temp values(@zhi)select @js=count(*) from @tempif @js>=@hangshubreakendselect * from @temp例如:产生5个不重复的7位随机数exec suijishu 7,5传两个参数,第一个参数:每个随机数的位数第二个参数:产生随机数的个数结果:id zhi1 90496372 07882333 74863214 54665395 2484970