DBMS RANDOM
DBMS_RANDOM#
DBMS_RANDOM 패키지는 임의의 숫자를 생성한다. DBMS_RANDOM 패키지를 구성하는 프로시저와 함수는 아래의 표와 같이 제공한다.
프로시저 및 함수 | 설명 |
---|---|
INITIALIZE | 패키지 초기화 |
SEED | 주어진 값이나 문자열을 시드(seed)로 설정 |
STRING | 임의의 문자열 생성 |
VALUE | 주어진 범위 내에서 임의의 값을 생성 |
RANDOM | 임의의 숫자를 생성한다. |
INITIALIZE#
DBMS_RANDOM 패키지를 초기화하는 프로시저이다.
구문#
DBMS_RANDOM.INITIALIZE(val IN INTEGER);
파라미터#
이름 | 입출력 | 데이터 타입 | 설명 |
---|---|---|---|
val | IN | INTEGER | 시드로 설정된 값 |
결과값#
저장 프로시저이므로 결과값을 반환하지 않는다.
예외#
예외를 발생시키지 않는다.
SEED#
주어진 값이나 문자열을 시드(seed)로 하여 임의의 시퀀스 값을 생성하는 프로시저이다.
구문#
DBMS_RANDOM.SEED(seedval IN INTEGER);
DBMS_RANDOM.SEED(seedval IN VARCHAR(2000));
파라미터#
이름 | 입출력 | 데이터 타입 | 설명 |
---|---|---|---|
seedval | IN | INTEGER 또는 VARCHAR(2000) | 시드로 설정할 값 또는 문자열 |
결과값#
저장 프로시저이므로 결과값을 반환하지 않는다.
예외#
예외를 발생시키지 않는다.
STRING#
임의의 문자열을 생성한다.
구문#
DBMS_RANDOM.STRING(opt IN CHAR, len IN NUMBER);
파라미터#
이름 | 입출력 | 데이터 타입 | 설명 |
---|---|---|---|
opt | IN | CHAR | 생성할 문자열. |
len | IN | NUMBER | 생성할 문자열의 길이 |
설명#
opt에는 아래의 파라미터 중 하나를 명시할 수 있다.
-
'u', 'U' : 임의의 대문자 알파벳 생성
-
'l', 'L' : 임의의 소문자 알파벳 생성
-
'a', 'A' : 대소문자를 구문하지 않고 임의의 알파벳 생성
-
'x', 'X' : 대문자 알파벳과 숫자를 생성
-
'p', 'P' : 출력할 수 있는 모든 문자열 생성
len(gth)에는 임의로 생성할 문자열의 길이를 명시하며, 0~4000까지 입력이 가능하다.
결과값#
저장 프로시저이므로 결과값을 반환하지 않는다.
예외#
예외를 발생시키지 않는다.
VALUE#
주어진 범위 내에서 임의의 값을 생성하는 프로시저이다. 범위가 지정되지 않으면, 0~1 사이의 임의의 숫자를 반환한다.
구문#
NUMBER variable := DBMS_RANDOM.VALUE(low IN NUMBER, high IN NUMBER);
파라미터#
이름 | 입출력 | 데이터 타입 | 설명 |
---|---|---|---|
low | IN | NUMBER | 임의의 값을 생성할 범위의 최솟값 |
high | IN | NUMBER | 임의의 값을 생성할 범위의 최댓값 |
결과값#
저장 프로시저이므로 결과값을 반환하지 않는다.
예외#
예외를 발생시키지 않는다.
RANDOM#
이 함수는 임의의 정수형 값을 생성하는 프로시저이다.
구문#
DBMS_RANDOM. RANDOM();
파라미터#
없음
결과값#
성공적으로 수행하면 임의의 정수값을 반환한다.
예외#
예외를 발생시키지 않는다.
예제#
임의의 숫자를 출력한다.
iSQL> select dbms_random.random() from dual;