DBMS_RANDOM
パッケージは、組込み式の乱数ジェネレータを提供します。
この章の内容は次のとおりです。
操作上のノート
ノート: DBMS_RANDOM は暗号化に使用するものではありません。 |
RANDOM
ファンクションは、[-2^^31, 2^^31)の範囲の整数を生成します。
VALUE
ファンクションは[0,1)の範囲の数を生成し、精度は38桁です。
DBMS_RANDOM
は明示的に初期化できますが、乱数ジェネレータをコールする前に初期化する必要はありません。明示的な初期化が行われない場合は、日付、ユーザーIDおよびプロセスIDで自動的に初期化されます。
このパッケージを、同じシードを使用して2回シードしてから同じ方法でアクセスした場合、2回とも同じ結果が生成されます。
テストなどのように、すべての実行で乱数のシーケンスが同じになる必要のある場合があります。その場合は、SEED
のオーバーロードをコールして、ジェネレータを一定の値でシードします。各実行時の出力を変える場合は、単にシードのコールを省略します。これにより、システムによって適切なシードが選択されます。
表6-1 DBMS_RANDOMパッケージのサブプログラム
サブプログラム | 説明 |
---|---|
|
シード値を使用して、パッケージを初期化します。 |
|
正規分布の乱数を戻します。 |
|
乱数を生成します。 |
|
シードをリセットします。 |
|
ランダム文字列を取得します。 |
|
パッケージを終了します。 |
|
あるバージョンは、0以上1未満で小数点以下38桁(精度38桁)の乱数を取得します。他のバージョンでは、ランダムなOracle Databaseの数値 |
ノート: INITIALIZEプロシージャ、RANDOMファンクションおよびTERMINATEプロシージャは非推奨になりました。今回のリリースに含まれているのは、下位互換性を保つという理由にすぎません。 |
ノート:
|