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随机字符串的生成方法及具体应用的更多相关文章

  1. (C#)生成指定长度的随机字符串的通用方法

    .NET(C#)生成指定长度的随机字符串的通用方法,此方法可以指定字符串的长度,是否包含数字,是否包含符号,是否包含小写字母,是否包含大写字母等, 源码: #region 生成指定长度的随机字符串 / ...

  2. Python 中的POST/GET包构建以及随机字符串的生成-乾颐堂

    现在,我们来用Python,创建GET包和POST包. 至于有什么用处,大家慢慢体会. Python 中包含了大量的库,作为一门新兴的语言,Python 对HTTP有足够强大的支持. 现在,我们引入新 ...

  3. 生成随机字符串(UUID方法)

    这是另一种用UUID生成随机字符串的方法. public class RandomGenerator{ private int length; public void setLength(int le ...

  4. JS生成随机字符串的多种方法

    这篇文章主要介绍了JS生成随机字符串的方法,需要的朋友可以参考下 下面的一段代码,整理电脑时,记录备查. <script language="javascript"> ...

  5. mysql中的 随机字符串的生成

    方法1. SELECT SUBSTRING(MD5(RAND()),FLOOR(RAND()*26)+1,6) AS rand_str; 上诉示例产生的是:6位长度的随机字符串. 函数解释: rand ...

  6. Python生成8位随机字符串的一些方法

    #第一种方法 import random import string seed = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP ...

  7. 接口自动化CSV文件生成超长随机字符串--java接口方法

    public class STR { private static String Builderrud(int a){ StringBuilder builder= new StringBuilder ...

  8. js生成随机固定长度字符串的简便方法

    概述 碰到一个需求:用js生成固定长度的字符串.在网上查了很多资料,网上的方法都比较麻烦.我自己灵光一现,实现了一个比较简单的方法.记录下来,供以后开发时参考,相信对其他人也有用. js生成随机字符串 ...

  9. PHP中生成随机字符串,数字+大小写字母随机组合

    简单的生成随机字符串: /* * 生成随机字符串 * * $length 字符串长度 */ function random_str($length) { // 密码字符集,可任意添加你需要的字符 $c ...

随机推荐

  1. SDL 1.2.15 issue

    SDL 1.2.15中,对于X11的函数,默认采用动态加载的方式 但相应的X11函数名在SDL中并没有重新命名(SDL2中都添加了前缀X11_) 这样在SDL与其他库混合静态编译链接时,X11的函数就 ...

  2. jQuery animate动画 stop()方法详解~

    一.动画格式: 格式一:jQueryObject.animate( cssProperties, options ) 格式二:$('#id').animate( styles[, duration ] ...

  3. WinForm------SimpleButton去掉点击时的边框

    设置属性

  4. Java学习资料

    微信扫码:http://v.dxsbb.com/jisuanji/Java之家:http://www.javazhijia.com/bs/biye/137.html一些 http://www.ibei ...

  5. Fedora 23 忘记root密码

    方法:进入单用户模式改密码 进入grub后,按e进入编辑模式.找到以“linux"开头的那一行,在末尾加” rw init=/bin/bash".ctrl-x启动 (grub2用c ...

  6. junit学习笔记

    junit编程规范 测试方法上必须使用@Test进行修饰 测试方法必须使用public void 进行修饰,不能带任何的参数 新建一个源代码目录 测试类的包应该和被测试类保持一致 测试单元中的每个方法 ...

  7. trigger中insert动作的测试

    Trigger为默认事务 测试环境:sql server 2008 r2 对象:DevList表 目标:确定trigger在数据库中有数据变化时是一次一批一批执行还是,按每条触发执行 测试需求: De ...

  8. 最终解决 mouseenter, mouseleave , mouseout mousehover mousemove等事件的区别?

    在jquery中, html页面的div的显示和隐藏, 修改等的功能, 最终都要由 事件 触发来引用, 不管是键盘事件, 还是鼠标事件... mouseenter和mouseleave是成对对应的, ...

  9. jvm指令调试

    监控GC的工具分为2种:命令行工具和图形工具: 常用的命令行工具有: 注:下面的命令都在JAVA_HOME/bin中,是java自带的命令.如果您发现无法使用,请直接进入Java安装目录调用或者先设置 ...

  10. 浅谈ASM中的SLB

    接触Azure几个月,总想写点什么,迟迟没有动笔,一是怕自己技术粗鄙,写的东西会令人捧腹,二是工作原因,时间比较匆忙,在此再次声明,以下写的东西都是我个人看法,若有不足,请多多包涵!!! 情景是这样的 ...