※PL/SQL사용자 정의 함수
함수 생성
CREATE OR REPLACE FUNCTION 함수이름(매개변수1, 매개변수 2,....)
RETURN 데이터타입;
IS[AS]
변수,상수등 선언
BEGIN
실행부
RETURN 반환값;
[EXCEPTION 예외처리부]
END [함수이름];
- CREATE OR REPLACE FUNCTION : CREATE OR REPLACE구문을 사용하여 함수를 생성. 최초 함수를 만들고 난 다음 수정을 하더라도 구문을 사용해 계속 컴파일 할 숭 있고, 마지막으로 수정된 최종본이 반영
- 매개변수 : 함수로 전달되는 매개변수로,"매개변수명 데이터 타입"형태로 명시한다. 매개변수는 생략이 가능하다.
- RETURN 데이터 타입 : 함수가 반환할 데이터 타입을 지정한다.
- RETURN 반환값 : 매개변수를 받아 특정 연산을 수행한 후 반환할 값을 명시한다.
※함수에 대한 생성 부분 SQL
CREATE OR REPLACE FUNCTION TEST_FN(NUM1 NUMBER ,NUM2 NUMBER)
RETURN NUMBER --반환데이터 타입은 NUMBER
IS
TEST_NUM_01 NUMBER :=0;
TEST_NUM_02 NUMBER :=0;
BEGIN
TEST_NUM_02 := FLOOR(NUM1/NUM2); -- 피젯수/젯수 결과에 정수부분을 걸러낸다.
TEST_NUM_01 := NUM1 -(NUM2*TEST_NUM_02); -- 나머지 = 피젯수 -(젯수*몫)
RETURN TEST_NUM_01; -- 나머지 반환
END;
※위와 같이 명령어로 생성할수 있지만 TOOL을 사용하여 FUNCTION을 생성할수 있다.
함수를 호출할 경우 아래의 이미지와 같이 호출한다
(SELECT TEST_FN(14,3) FROM DUAL;)
위의 이미지처럼 호출이 된다.
'DB > ORACLE' 카테고리의 다른 글
26.[오라클]예외처리 (0) | 2024.02.23 |
---|---|
25.[오라클]프로시저 정리 (0) | 2024.02.20 |
23.[오라클]PL/SQL제어문 정리 (0) | 2024.02.20 |
22.[오라클]다중INSERT하기 (0) | 2024.02.18 |
21.[오라클]분석함수와window (0) | 2024.02.14 |