DBMS_RANDOM包提供给用户获取随机数。使用DBMS_RANDOM包的时候,提供随机数种子,所谓的随机数种子就是在RANDOM算法时候使用的值。在很多编程语言中,两次随机数的种子是一样的,那么得到的随机数序列也是一样的。所以很有必要在使用DBMS_RANDOM获取随机数的时候,提供不同的种子来获取序列,DMBS_RANDOM包中的过程与函数如下:1)INITIALIZE:
该过程初始化DMBS_RANDOM包,必须要初始化随机数种子,语法如下:
DBMS_RANDOM.INITIALIZE(SEED IN BINARY_INTERGER)2)SEED
该过程用于重新设置随机数种子,语法如下:
DBMS_RANDOM.SEED(SEED IN BINARY_INTEGER);3)RANDOM
该函数用于生成随机数,语法如下:
DBMS_RANDOM.RANDOM RETURN BINARY_INTEGER;4)TERMINATE
该过程用于关闭DBMS_RANDOM包,语法如下:
DBMS_RANDOM.TERMINATE;下面是几个获取随机数的例子:SET SERVEROUT ON;DECLARE
n_randomNum NUMBER(10);
n_randomSeed CONSTANT NUMBER :=98765;
BEGIN
dbms_random.initialize(n_randomSeed);
FOR i IN 0..10 LOOP
n_randomNum := abs(dbms_random.random()/ n_randomSeed);
dbms_output.put_line(n_randomNum);
END LOOP;
dbms_random.terminate;
END;得到0到10之间的整数:SELECT CEIL(DBMS_RANDOM.VALUE(0,10)) FROM DUAL;得到0到1之间的一个小数:SELECT dbms_random.VALUE FROM dual;得到0到100之间的一个小数:SELECT dbms_random.VALUE(0,100) FROM dual;获取字符以及数字组成的随机数(第一个参数可以取值如下:"u","U":大写字母、"l","L":小写字母、"a","A":大、小写字母、"x","X":数字、大写字母、"p","P":可打印字符、):select dbms_random.string("x", 3) from dual ;Linux下MySQL安装详解Oracle只读表空间中的表是可以DROP的相关资讯 DBMS_RANDOM
- Oracle之DBMS_RANDOM包详解 (05/04/2015 18:53:55)
- Oracle之DBMS_RANDOM 包用法详解 (03/18/2014 17:18:25)
| - Oracle 随机函数 DBMS_RANDOM (05/10/2014 15:07:51)
- Oracle的dbms_random各函数使用 (02/18/2013 08:47:37)
|
本文评论 查看全部评论 (0)