【转】有关Oracle随机字符串的生成方法及具体应用
Oracle生成随机字符串的方法是通过dbms_random.string实现的。
1.dbms_random.string用法
Oracle官方文档参考链接:http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_random.htm#i996825
用法是DBMS_RANDOM.STRING(选项, 返回字符串长度)
选项有如下几种可供选择:
1)'u', 'U' - returning string in uppercase alpha characters
2)'l', 'L' - returning string in lowercase alpha characters
3)'a', 'A' - returning string in mixed case alpha characters
4)'x', 'X' - returning string in uppercase alpha-numeric characters
5)'p', 'P' - returning string in any printable characters.
6)Otherwise the returning string is in uppercase alpha characters.
2.以随机生成8位密码这个简单需求为例演示一下各个选项的用法
1)生成由大写字母组成的8位密码
sys@ora10g> select dbms_random.string('u',8) "u_8_password" from dual;
u_8_password
------------------------------------------------------------------
HXGBMNCF
sys@ora10g> select dbms_random.string('U',8) "U_8_password" from dual;
U_8_password
------------------------------------------------------------------
JEZLDJXK
2)生成由小写字母组成的8位密码
sys@ora10g> select dbms_random.string('l',8) "l_8_password" from dual;
l_8_password
------------------------------------------------------------------
ilxpvvmy
sys@ora10g> select dbms_random.string('L',8) "L_8_password" from dual;
L_8_password
------------------------------------------------------------------
pzvjvpji
3)生成由大小写字母混合出现的8位密码
sys@ora10g> select dbms_random.string('a',8) "a_8_password" from dual;
a_8_password
------------------------------------------------------------------
YfeaneZx
sys@ora10g> select dbms_random.string('A',8) "A_8_password" from dual;
A_8_password
------------------------------------------------------------------
IghqWAVu
4)生成由大写字母和数字组成的8位密码
sys@ora10g> select dbms_random.string('x',8) "x_8_password" from dual;
x_8_password
------------------------------------------------------------------
2VKQ4FSH
sys@ora10g> select dbms_random.string('X',8) "X_8_password" from dual;
X_8_password
------------------------------------------------------------------
MMYTPC40
5)生成由任何可打印字符组成的8位密码
sys@ora10g> select dbms_random.string('p',8) "p_8_password" from dual;
p_8_password
------------------------------------------------------------------
G7`Rbe#V
sys@ora10g> select dbms_random.string('P',8) "P_8_password" from dual;
P_8_password
------------------------------------------------------------------
wPqHt*0.
6)当选项为其他字母的时候返回的内容仍将是大写字母
选项以“8”为例,返回的8位随机字符串内容是由大写字母组成的。
sys@ora10g> select dbms_random.string('8',8) "8_8_password" from dual;
8_8_password
------------------------------------------------------------------
PJGYPPLG
3.小结
本文以具体实例形式演示了dbms_random.string的用法。有时候也可以混合使用。
sys@ora10g> select dbms_random.string('u',8)||dbms_random.string('l',8) "u_l_16_password" from dual;
u_l_16_password
------------------------------------------------------------------
EMVXOZLGixziwvny
Good luck.
参考:http://blog.itpub.net/25746731/viewspace-693735/
【转】有关Oracle随机字符串的生成方法及具体应用的更多相关文章
- (C#)生成指定长度的随机字符串的通用方法
.NET(C#)生成指定长度的随机字符串的通用方法,此方法可以指定字符串的长度,是否包含数字,是否包含符号,是否包含小写字母,是否包含大写字母等, 源码: #region 生成指定长度的随机字符串 / ...
- Python 中的POST/GET包构建以及随机字符串的生成-乾颐堂
现在,我们来用Python,创建GET包和POST包. 至于有什么用处,大家慢慢体会. Python 中包含了大量的库,作为一门新兴的语言,Python 对HTTP有足够强大的支持. 现在,我们引入新 ...
- 生成随机字符串(UUID方法)
这是另一种用UUID生成随机字符串的方法. public class RandomGenerator{ private int length; public void setLength(int le ...
- JS生成随机字符串的多种方法
这篇文章主要介绍了JS生成随机字符串的方法,需要的朋友可以参考下 下面的一段代码,整理电脑时,记录备查. <script language="javascript"> ...
- mysql中的 随机字符串的生成
方法1. SELECT SUBSTRING(MD5(RAND()),FLOOR(RAND()*26)+1,6) AS rand_str; 上诉示例产生的是:6位长度的随机字符串. 函数解释: rand ...
- Python生成8位随机字符串的一些方法
#第一种方法 import random import string seed = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP ...
- 接口自动化CSV文件生成超长随机字符串--java接口方法
public class STR { private static String Builderrud(int a){ StringBuilder builder= new StringBuilder ...
- js生成随机固定长度字符串的简便方法
概述 碰到一个需求:用js生成固定长度的字符串.在网上查了很多资料,网上的方法都比较麻烦.我自己灵光一现,实现了一个比较简单的方法.记录下来,供以后开发时参考,相信对其他人也有用. js生成随机字符串 ...
- PHP中生成随机字符串,数字+大小写字母随机组合
简单的生成随机字符串: /* * 生成随机字符串 * * $length 字符串长度 */ function random_str($length) { // 密码字符集,可任意添加你需要的字符 $c ...
随机推荐
- Angular.js实现折叠按钮的经典指令.
var expanderModule=angular.module('expanderModule',[]) expanderModule.directive('expander',function( ...
- Microsoft SQL Server 2008 R2官方中文版(SQL2008下载).rar
Microsoft SQL Server 2008 R2官方中文版(SQL2008下载).rar
- 一步一步学习Bootstrap系列--表单布局
前言:Bootstrap 属于前端 ui 库,通过现成的ui组件能够迅速搭建前端页面,简直是我们后端开发的福音,通过几个项目的锻炼有必要总结些常用的知识,本篇把常用的Bootstrap表单布局进行归纳 ...
- SQL Server遍历表的几种方法
在数据库开发过程中,我们经常会碰到要遍历数据表的情形,一提到遍历表,我们第一印象可能就想到使用游标,使用游标虽然直观易懂,但是它不符合面向集合操作的原则,而且性能也比面向集合低.当然,从面向集合操作的 ...
- 带有“非简单参数”的函数为什么不能包含 "use strict" 指令
非简单参数就是 ES6 里新加的参数语法,包括:1.默认参数值.2.剩余参数.3.参数解构.本文接下来要讲的就是 ES7 为什么禁止在使用了非简单参数的函数里使用 "use strict&q ...
- C#,int转成string,string转成int
转载:http://www.cnblogs.com/xshy3412/archive/2007/08/29/874362.html 1,int转成string用toString 或者Convert.t ...
- java生产者/消费者模式实现——一生产者一消费者(操作值)
胶多不粘话多不甜,直接上代码: 生产者类: /** * Created by 51304 on 2016/2/28. */ public class P { private String lock; ...
- memcache与memcached的区别
其实到底说成什么无所谓,只要你真正理解和知道使用就可以了!但是介于有和我一样学习时遇到的这个疑惑,在此分享下其中的缘由: Memcache是一个软件 Memcache是一个自由和开放源代码.高性能.分 ...
- CentOS 6.3 中安装VirtualBOX增强工具失败:Building the main Guest Additions module[FAILED]
在VirtualBox里安装CentOS系统,会遇到“增强工具”无法正常安装,主要的原因是出在Kernel 库找不到. 错误提示如下: 通过查看日志文件: cat /var/log/vboxadd- ...
- 我对Jenkins的认识
参考: http://www.cnblogs.com/sunzhenchao/archive/2013/01/30/2883289.html