方法1:
declare @sql nvarchar(400)
select @sql= 'select char( '+cONVERT(NVARCHAR,CONVERT(INT,26*rand())+97)+ ')+
CHAR( '+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+ ')+
CHAR( '+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+ ')+
CHAR( '+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+ ')+
CHAR( '+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+ ')+
CHAR( '+CONVERT(NVARCHAR,CONVERT(INT,rand()*26)+97)+ ') '
print @sql
EXEC(@sql)
方法2:
declare @str varchar(10)
set @str = ' '
select @str = @str + chr from
(select top 6 chr from (
select 'a ' as chr union all
select 'b ' union all
select 'c ' union all
select 'd ' union all
select 'e ' union all
select 'f ' union all
select 'g ' union all
select 'h ' union all
select 'i ' union all
select 'j ' union all
select 'k ' union all
select 'l ' union all
select 'm ' union all
select 'n ' union all
select 'o ' union all
select 'p ' union all
select 'q ' union all
select 'r ' union all
select 's ' union all
select 't ' union all
select 'u ' union all
select 'v ' union all
select 'w ' union all
select 'x ' union all
select 'y ' union all
select 'z '
) as a ORDER BY NEWID()) as t
----查看
select @str
方法3:
CREATE VIEW V_RAND AS SELECT RAND1 = CONVERT(INT,RAND()*26),RAND2 = RAND()*2
GO
CREATE FUNCTION DBO.f_GetRandNum(@LEN INT,@FLAG INT)
RETURNS NVARCHAR(100)
AS
--@LEN 输出字符的长度
--@FLAG 返回值包含字符 1:大写字母 2:小写字母 3:大小写字母混合
BEGIN
DECLARE @SQL NVARCHAR(100),@RAND INT
SELECT @SQL = ' '
IF @LEN > 100
SET @LEN = 100
WHILE @LEN > 0
BEGIN
SELECT @RAND = RAND1 + (CASE @FLAG WHEN 1 THEN 65 WHEN 2 THEN 97
ELSE (CASE WHEN RAND2 > 1 THEN 97 ELSE 65 END) END)
FROM V_RAND
SELECT @SQL = @SQL + CHAR(@RAND),@LEN = @LEN - 1
END
RETURN @SQL
END
GO
SELECT DBO.f_GetRandNum(7,3)
分享到:
相关推荐
sql生成随机码--自定义大写、小写、数字、特定字符个数
可以自动产生六位十六进制码,附使用方法 使用函数B6CRT()
在IT行业中,生成唯一性的随机码是一项常见的任务,特别是在数据标识、订单编号、用户认证等领域。这个名为"测试多种方法生成唯一性随机码Demo"的项目显然旨在探索和比较不同的随机码生成策略,以确保生成的序列具有...
首先,我们要理解如何在SQL Server中生成随机字符。这里使用了`CHAR()`函数,它能将一个ASCII码转换为对应的字符。ASCII码是从0到255的一个整数范围,包含了大小写字母、数字以及各种特殊字符。以下是一些示例: - ...
参数'x'表示字符串由大小写字母组成,通过改变参数,可以生成不同类型的随机字符串。 #### 5. **完整SQL语句构建** 结合以上知识点,完整的SQL语句如下: ```sql CREATE TABLE myTestTable AS SELECT rownum AS id...
│ │ 5.2.3 生成纯字母随机编号的示例(仅大小或者小写).sql │ │ 5.2.3 生成纯字母随机编号的示例(大小写混合).sql │ │ 5.2.3 生成纯数字随机编号的示例.sql │ │ 5.3.2 融合了补号处理的编号生成处理示例.sql ...
代码首先定义了一个名为`RandomStr`的存储过程,其功能是生成一个由特定字符集组成的6位随机字符串。这个随机字符串随后被用于创建用户名。具体实现包括: 1. **初始化变量**: - `@s`:存储允许使用的字符集,...
国内车牌号字母代表地区,全国车牌号码一览表。数据库运行sql文件导入即可
│ 5.2.3 生成纯字母随机编号的示例(仅大小或者小写).sql │ │ 5.2.3 生成纯字母随机编号的示例(大小写混合).sql │ │ 5.2.3 生成纯数字随机编号的示例.sql │ │ 5.3.2 融合了补号处理的编号生成...
5. 随机生成日期: Oracle 中生成随机日期可以通过 `DBMS_RANDOM.VALUE` 结合日期转换函数实现。首先,你可以使用 `TO_CHAR(SYSDATE, 'J')` 得到当前日期的基数(内部日期数),然后在一定范围内生成一个随机数并...
在Oracle数据库中,通过一条SQL语句快速生成大量测试数据是一项非常实用的技能。本文将详细介绍如何利用Oracle中的特性来实现这一目标。 ### 核心知识点:使用一条SQL语句快速生成10万条测试数据 #### 1. 使用`...
* 如果 `f_type` 等于 1,那么我们生成一个随机字母,使用 `char()` 函数将 ASCII 码转换为对应的字符。 * 如果 `f_type` 等于 2,那么我们生成一个随机数字,使用 `char()` 函数将数字转换为对应的字符。 * 如果 `f...
"JSP数字+字母验证码"是指使用Java Server Pages(JSP)技术实现的一种验证码,它通常包含随机生成的数字和字母组合,以增加破解的难度。下面将详细介绍JSP验证码的实现原理、步骤以及相关的知识点。 **验证码的...
5. 随机生成日期: Oracle提供了多种方式生成随机日期。一种方法是基于当前日期的基数(内部日期数): - `select to_char(sysdate,'J') from dual;` 获取当前日期的基数。 - 然后结合`dbms_random.value`生成一...
比如更新表`demotable`中的`demoname`字段,为ID大于23的记录生成32位的随机字符串: ```sql UPDATE demotable SET demoname=rand_string(32) WHERE id > 23; ``` 这样的方法在处理大量测试数据时非常有用,可以...
7.生成n位随机字符串 11 8.取出字符串中的汉字、字母或是数字 14 9.根据字符分割字符串的三种写法 16 10.将数字转换千分位分隔形式 18 11.取汉字首字母的两个函数 20 12.根据身份证得到生日函数 23 13.根据身份证...
- 这段代码会生成一个包含大写字母和数字的16位随机码。 2. **保存到Access数据库** - 使用ADO.NET库,我们可以创建数据库连接,执行SQL命令将随机码保存到指定表中。 - 示例代码: ```csharp using (var conn...
- 随机生成四位数字的验证码字符串`sRand`,并通过`Graphics.drawString()`方法将其绘制到图像的指定位置上。 - 最终,通过`session.setAttribute("rand", sRand)`将生成的验证码字符串存储到session中,以便后续...