sql-server2005下生成定长的随机字符串
来源:互联网 发布:软件界面 英文 编辑:程序博客网 时间:2024/03/29 06:20
写的是存储过程,里边肯定有很多不足的地方,希望大家指正
先贴代码:
set ANSI_NULLS ONset QUOTED_IDENTIFIER ONgoALTER proc [dbo].[SjString](@len int,@out varchar(100) output)asif object_id('tempdb..#Mytable') is not nullbegin drop table #Mytableendcreate table #MyTable( [ASCII] int)-----插入组成字符串所需的基本ASCII码(数字+下划线+字母)declare @number intset @number=48while @number<123 ----z的ASCII是122beginif (@number between 48 and 57)or(@number between 65 and 90)or(@number=95)or(@number between 97 and 122) insert into #MyTable([ASCII]) values(@number)set @number=@number+1endcreate table #My(String char(2)) --用于临时存放字符信息while @len>0begindeclare @ASCII intselect top 1 @ASCII=[ASCII] from #MyTable order by newid()insert into #My select char(@ASCII)set @len=@len-1enddeclare @str xmlset @str=(select rtrim(ltrim(String)) from #My for xml path(''))drop table #Myset @out=cast(@str as varchar(100))
利用以下语句调用查询:
declare @out varchar(100)exec SjString 6,@out outputselect @out
基本的思路是:先创建ASCII码表,这个应该先写到一个视图里应该会更好,然后利用循环实现:
字符串长度控制循环次数,循环体内每次都利用order by newid()随机选取top1个字符,插入到一个临时表中
最后利用for xml path('')把字段中的所有数据连接起来
- sql-server2005下生成定长的随机字符串
- Java生成定长随机字符串
- ios CCRandomGenerateBytes 生成定长随机字符串
- java随机生成指定精度小数、定长字符串------随笔
- Python生成定长格式的字符串
- 生成随机字符串的SQL实现
- shell下的随机字符串生成
- 随机字符串的生成
- 字符串的随机生成
- SQL存储过程生成一个指定长度的随机字符串
- sql server 生成随机不重复的字符串
- mysql 自定义sql函数生成指定长度的随机字符串
- VS08下的SQL Server2005配置
- SQL生成n位随机字符串
- SQL生成n位随机字符串
- 生成随机字符串的代码
- 生成随机长度的字符串
- 生成随机字符串的方法
- 1. 为什么选择RTX
- Linux内核代码记录--“好记性不如烂笔头”
- PE文件结构及其加载机制
- MySQL中的存储引擎讲解(InnoDB,MyISAM,Memory等各存储引擎对比)
- Android 初学遇到问题,持续更新中。。。。
- sql-server2005下生成定长的随机字符串
- Android开发者应该深入学习的10个开源应用项目
- Bicoloring UVA 10004
- [LeetCode]Add Two Numbers
- C++Builder Reviewer's Guide
- hdu 2024 C语言合法标识符
- 进程间通信---信号
- Linux安装C++ MAN手册
- python访问mysql