PL/SQL (11) BASIC LOOP을 활용하여 EMP745 테이블의 레코드를 업데이트하여라.
1. BASIC LOOP을 활용하여 EMP745 테이블의 레코드를 업데이트하여라.
SET SERVEROUTPUT ON;
CREATE OR REPLACE PROCEDURE PR_EMP_TEST5
(P_DEPT_NO NUMBER)
IS
-- CURSOR 명 : EMP_CURSOR
-- EMP_CURSOR 에 조건에 맞는 TB_LS_EMP867 테이블에서 가져온 데이터들을 담아준다.
CURSOR EMP_CURSOR IS
SELECT EMP_NO, EMP_NM, EMP_ID, DEPT_NO, SAL
FROM TB_LS_EMP867
WHERE DEPT_NO = P_DEPT_NO;
-- 변수를 선언한다.
V_EMP_NO NUMBER(8) := 0;
V_EMP_ID VARCHAR2(30);
V_EMP_NM VARCHAR2(20);
V_DEPT_NO NUMBER(4) := 0;
V_SAL NUMBER(10) := 0;
BEGIN
OPEN EMP_CURSOR;
LOOP
FETCH EMP_CURSOR INTO V_EMP_NO, V_EMP_ID, V_EMP_NM, V_DEPT_NO, V_SAL;
EXIT WHEN EMP_CURSOR%NOTFOUND;
IF V_SAL > 3000000 THEN
-- TABLE의 컬럼에 대해 반드시 명시해주자.
INSERT INTO EMP745(EMP_NO, EMP_ID, EMP_NM, DEPT_NO, SAL, INCOME_LVL)
VALUES (V_EMP_NO, V_EMP_ID, V_EMP_NM, V_DEPT_NO, V_SAL, '고소득');
ELSE INSERT INTO EMP745(EMP_NO, EMP_ID, EMP_NM, DEPT_NO, SAL, INCOME_LVL)
VALUES (V_EMP_NO, V_EMP_ID, V_EMP_NM, V_DEPT_NO, V_SAL, '저소득');
END IF;
END LOOP;
CLOSE EMP_CURSOR;
END;
/
SELECT * FROM EMP745;
EXEC PR_EMP_TEST5(82);
출처: https://sourceflower.tistory.com/35?category=608037 [소스플로우]
'Database > Oracle PLSQL' 카테고리의 다른 글
PL/SQL (15) PL/SQL 정리 및 예제 (0) | 2019.04.04 |
---|---|
PL/SQL (14) PL/SQL의 종류 (0) | 2019.04.04 |
PL/SQL (13) FOR .. LOOP을 활용하여 EMP745 테이블의 레코드를 업데이트하여라. (0) | 2019.04.04 |
PL/SQL (12) WHILE LOOP을 활용하여 EMP745 테이블의 레코드를 업데이트하여라. (0) | 2019.04.04 |
PL/SQL (10) FOR .. LOOP을 활용한 프로시저 예제 (0) | 2019.04.04 |
PL/SQL (9) FOR .. LOOP을 돌려보자. (0) | 2019.04.04 |
PL/SQL (8) CURSOR, WHILE LOOP을 활용하여 프로시저 만들기 예제 (0) | 2019.04.04 |
PL/SQL (7) CURSOR, WHILE LOOP을 활용하여 데이터 확인하기 (0) | 2019.04.04 |