Old/Procedure

05_IF

깨꾹2 2018. 10. 10. 14:51

SELECT * FROM dept;

--부서 번호를 통해 팀 이름 출력과 위치



SELECT deptname, loc FROM dept WHERE deptno =1;


CREATE OR REPLACE PROCEDURE dept_find(v_no IN NUMBER)

    IS

    v_dept dept%ROWTYPE;

    BEGIN

    SELECT  loc INTO  v_dept.loc FROM dept WHERE deptno =1;

    

    IF v_no = 1 THEN

        DBMS_OUTPUT.put_line('세일즈 팀');

    END IF;

    IF v_no = 2 THEN

         DBMS_OUTPUT.put_line('개발 1팀');

    END IF;

    IF v_no = 3 THEN

        DBMS_OUTPUT.put_line('인사 팀');

    END IF;

    IF v_no = 4 THEN

        DBMS_OUTPUT.put_line('개발2 팀');

    END IF;

    DBMS_OUTPUT.put_line('위치 : '|| v_dept.loc);

    END;

/


EXEC dept_find(2);



설명 : 입력받은 번호에 따라 어느 팀인지 출력하는 프로시저.



*IF의 사용법1


IF 조건1 THEN

구문1

END IF

IF 조건2 THEN

구문2

END IF




*IF의 사용법2


IF 조건1 THEN

구문1

ELSE

구문2

END IF



<사용법2 예시>



*IF의 사용법3


IF 조건1 THEN

구문1

ELSIF 조건2 THEN

구문2

ELSE

구문3

END IF



*쿼리문으로 프로시저 소스코드 보기


SELECT name,text FROM USER_SOURCE WHERE name = 'DEPT_FIND';




이렇게 쿼리문으로 확인하거나



서버 -> 프로시저 -> 프로시저이름 으로


프로시저의 소스코드를 확인할 수 있다.



'Old > Procedure' 카테고리의 다른 글

07_커서  (0) 2018.10.11
06_Loop,While문  (0) 2018.10.11
04_활용  (0) 2018.10.10
03_Function  (0) 2018.10.10
02_Scala  (0) 2018.10.10