dbms_random.string(parameter,length)
parameter列表 说明 及 实例
1.'u', 'U' - Returning string is in uppercase alpha
characters. 生成由大写字母组成的随机字符
SQL> select dbms_random.string('u',64) from dual;
DBMS_RANDOM.STRING('U',64)
--------------------------------------------------------------------------------
CKLERYSHBIXVBTXCITIFOKIBVEKTWHCJCRIHFVLSISNOOWFJPDEETGLYPVXNFVQD
SQL> select dbms_random.string('U',64) from dual;
DBMS_RANDOM.STRING('U',64)
--------------------------------------------------------------------------------
ZFCHOIVQLVUCHNLLIOXPNNHRNFULQBWIXQVCEAABZYGAUWJXKVCSJYVNLXSFKRZJ
2.'l', 'L' - Returning string is in lowercase alpha
characters. 生成由小写字母组成的随机字符
SQL> select dbms_random.string('l',64) from dual;
DBMS_RANDOM.STRING('L',64)
--------------------------------------------------------------------------------
lpflolminepikrpxaxdzarvjnoioszkkolmiiwfxzsbtpklmuwfkjvsydnaglxtb
SQL> select dbms_random.string('L',64) from dual;
DBMS_RANDOM.STRING('L',64)
--------------------------------------------------------------------------------
qbqsovvapftpchvhknzbucjszmottyzptrmefgmjbyamcogobzifzctpofmhuupj
3.'a', 'A' - Returning string is in mixed-case alpha
characters. 生成由大小写字母混合组成的随机字符
SQL> select dbms_random.string('a',64) from dual;
DBMS_RANDOM.STRING('A',64)
--------------------------------------------------------------------------------
HMjRdhHwNiVRhrGxfGVOJbNhwFtmaSVINSMeLTxRLSfqPgKVEjVPsFSEScEDAdEa
SQL> select dbms_random.string('A',64) from dual;
DBMS_RANDOM.STRING('A',64)
--------------------------------------------------------------------------------
AivsKDOrYAEYIYDBpPCTYoMfvRiMwBrMAbiZkZNdkaoAdVFHrGXZRRGwzeEGFGEZ
'x', 'X' - Returning string is in uppercase alpha-numeric
characters. 生成由大写字母数字混合组成的随机字符
SQL> select dbms_random.string('x',64) from dual;
DBMS_RANDOM.STRING('X',64)
--------------------------------------------------------------------------------
V7RBJBNGGZJWNM81HVYQ2Q7BWYG013QX5SSNUWZIYV4NP0N13F1UISOS68CLEDDM
SQL> select dbms_random.string('X',64) from dual;
DBMS_RANDOM.STRING('X',64)
--------------------------------------------------------------------------------
RCJII8JFR3ESQUC0DIUKVEPB05999D5P7N5787GUIGM8N1SJQ76AS3YSHSRRMO5Y
4.'p', 'P' - Returning string is in any printable characters.
生成由任何可打印字符组成的随机字符
SQL> select dbms_random.string('p',64) from dual;
DBMS_RANDOM.STRING('P',64)
--------------------------------------------------------------------------------
gT |$mqvzNlRINsh@HR$M)OcKv~stZn9
]4ap\Kaa|m4XoSo4;m*j]`3L~qxI`0z
SQL> select dbms_random.string('P',64) from dual;
DBMS_RANDOM.STRING('P',64)
--------------------------------------------------------------------------------
,"4:,@K"E@8&x#S`3l}`9OML\'[;>\]n
"Nd0~qZ\'1da4t_loZc1^Hi)pUJ|)qF
5.Otherwise the returning string is in uppercase alpha
characters. 生成大写字母组合的随时字符
SQL> select dbms_random.string('q',64) from dual;
DBMS_RANDOM.STRING('Q',64)
--------------------------------------------------------------------------------
JTUCAKHVXEKYSJDLXGZNHBPCWBEDCSAAVZVSQENSAARXAOFACOYHEMNGUZGDDIWS
注意paramter参数的长度 只能是1位,超过1位提示错误
SQL> select dbms_random.string('as',64) from dual;
select dbms_random.string('asdf',64) from dual
ORA-06502: PL/SQL: numeric or value error: character string
buffer too small
ORA-06512: at "SYS.DBMS_RANDOM", line 171
SQL> select dbms_random.string('as',64) from dual;
select dbms_random.string('as',64) from dual
ORA-06502: PL/SQL: numeric or value error: character string
buffer too small
ORA-06512: at "SYS.DBMS_RANDOM", line 171