Oracle之DBMS_RANDOM包详解

发表于:2015-5-06 09:49

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:iVictor    来源:51Testing软件测试网采编

  3. RANDOM
  RANDOM返回值的范围为: [-2^31, 2^31),返回的是整数。
  语法:
  DBMS_RANDOM.RANDOM
  RETURN binary_integer;
  举例:
  SQL> select dbms_random.random from dual;
  RANDOM
  ----------
  -1.363E+09
  4. SEED
  功能和INITIALIZE函数类似,实际上,INITIALIZE函数被淘汰,推荐的替代函数即是SEED函数。与INITIALIZE函数不同的是SEED函数同时支持数值和字符作为种子值,而INITIALIZE函数只支持数值。
  语法:
  DBMS_RANDOM.SEED (
  val IN BINARY_INTEGER);
  DBMS_RANDOM.SEED (
  val IN VARCHAR2);
  举例:
  BEGIN
  dbms_random.seed('hello');
  FOR i IN 1 .. 10 LOOP
  dbms_output.put_line(round(dbms_random.value * 100));
  END LOOP;
  END;
  输出如下:
  58
  71
  33
  4
  39
  53
  93
  37
  20
  5
  其中,VARCHAR2的最大范围为2000.
  5. STRING
  随机生成字符串
  语法:
  DBMS_RANDOM.STRING
  opt IN CHAR,
  len IN NUMBER)
  RETURN VARCHAR2;
  关于opt和len的说明,解释如下:
  可见,opt指的是字符串的格式,len指的是字符串的长度。
  举例:
SQL> select dbms_random.string('u',10) value from dual;
VALUE
--------------------
MCPEZLEQOO
SQL> select dbms_random.string('l',10) value from dual;
VALUE
--------------------
laufaqufln
SQL> select dbms_random.string('a',10) value from dual;
VALUE
--------------------
vjEetXlItt
SQL> select dbms_random.string('x',10) value from dual;
VALUE
--------------------
LAMDGZE22E
SQL> select dbms_random.string('p',10) value from dual;
VALUE
--------------------
4LF =Q'(fP
32/3<123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号