DBMS_RAMDOM包中一共包含9个存储过程和函数,其中6个是现在用的,3个是已经过时的:

当前版本11gR2

  每次生成一个随机数oracle都会初始化一个种子,也可以调用seed过程自己初始化一个种子。

  如果2次生成随机数的时候使用同一个种子,那么得到的结果也是一样的。

 

1.用整数初始化一个随机种子,procedure

dbms_random.seed(val IN BINARY_INTEGER);

2.用字符串初始化一个种子,procedure

dbms_random.seed(val IN VARCHAR2);

3.获取一个38位小数的[0,)之间的小数,包含0,不包含1,function

  返回一个NUMBER

dbms_random.value 

4.获取一个[low,high)之间的数,包含low,不包含high,function

  返回一个NUMBER

dbms_random.value(low IN NUMBER, high IN NUMBER);

5.从正态分布得到一个随机数,function

  返回一个NUMBER

dbms_random.normal

6.获取一个随机字符串,function

  返回一个VARCHAR2

dbms_random.string (opt char, len NUMBER);
--opt:表示返回值可能包含的东西
----'u','U'  :  任何大写字母
----'l','L'  :  任何小写字母
----'a','A'  :  大小写混合字母
----'x','X'  :  大写字母和数字混合
----'p','P'  :  任何可打印字符
----其他参数  :  任何大写字母
--len:表示要返回的字符串长度

 

7.初始化放发,其实就是调用seed方法,procedure

  过时的

dbms_random.initialize(val IN BINARY_INTEGER);

8.获取一个[-231,231)之间的整数,包含-231  ,不含231 ,function

  过时的

dbms_random.random;

9.无用的方法

  过时的

dbms_random.terminate;