sqlserver存储过程批量生成随机字符串

sqlserver存储过程批量生成随机字符串

ID:12040581

大小:29.00 KB

页数:3页

时间:2018-07-15

sqlserver存储过程批量生成随机字符串_第1页
sqlserver存储过程批量生成随机字符串_第2页
sqlserver存储过程批量生成随机字符串_第3页
资源描述:

《sqlserver存储过程批量生成随机字符串》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、需求:利用SQLServer存储过程,批量生成随机的字符串,字符串为8位字符或数字组成,前两位为固定的字符“GC”。如:GC022Uxf实现:执行下面的代码即可产生需要的随机字符串,具体说明已经在代码后标注。ifexists(selectnamefromsysobjectswherename='GetRandStr'ANDtype='P')--如果在已知数据库中存在GetRandStr这个存储过程,则删除(为了方便反复执行这段代码)dropprocGetRandStrgocreateprocdbo.GetRandStr(@countint,@novarchar(8)outp

2、ut)--@count是随机字符串个数,@no则是最终生成的随机字符串asbegindeclare@randomstrvarchar(100),@charpoolvarchar(62)--@randomstr是每次随机的字符累加的值,@charpool是产生随机字符的字符序列declare@iinteger,@counterinteger--@i是循环次数,@counter是产生随机字符的位置set@charpool='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'--设置随机序列set@i=1

3、--循环初始值set@randomstr=''--随机字符串初始值while@i<=@countbeginhere:set@counter=CAST(RAND()*100/1.61ASinteger)--产生随机字符位置(0-62的整数)if@counter<1gotohere--如果@counter=0就重新生成随机数set@randomstr=@randomstr+substring(@charpool,@counter,1)--在随机序列中找到生成的随机位置的字符set@i=@i+1--循环递增endset@no='GC'+left(@randomstr,isnull

4、(@count,6))--最后将生成的六个随机字符加上两个固定字符'GC',组成所需的随机字符串returnendgo调用:比如要生成10个随机字符串declare@intintset@int=1while@int<=10begindeclare@somethingvarchar(8)execGetRandStr6,@somethingoutput--调用存储过程print@something--输出随机字符串set@int=@int+1endgo更多精彩请登陆:http://blog.sina.com.cn/xu3180497

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。