본문 바로가기
데이터베이스

27일차// [Oracle] ACCEPT, DECLARE, BEGIN, END 절을 이용해 table에 insert [예제]

by aesup 2021. 2. 18.
728x90

 

-- 사원추가
-- 이름, 급여, 부서번호     이름 + @naver.com

-- 부서번호 30일 경우 -> 입력받은 급여에 20% 인상해서 * 1.2
-- 부서번호 60일 경우 -> 입력받은 급여에 10% 인상해서

ACCEPT p_name PROMPT '이 름:'
ACCEPT p_sal PROMPT '급 여:'
ACCEPT p_deptno PROMPT '부서번호:'

DECLARE
    v_name employees.last_name%TYPE := '&p_name';
    v_sal employees.salary%TYPE := &p_sal;
    v_deptno employees.department_id%TYPE := &p_deptno; 
    
BEGIN
    dbms_output.put_line('이 름:' || v_name);
    dbms_output.put_line('급 여:' || v_sal);
    dbms_output.put_line('부서번호:' || v_deptno);

    IF v_deptno = 30 THEN
        v_sal := v_sal * 1.2;
    ELSIF v_deptno = 60 THEN
        v_sal := v_sal * 1.1;
    END IF;
    
    INSERT INTO employees(employee_id, last_name, salary, 
                        hire_date, department_id, job_id, email)
    VALUES(employees_seq.nextval, v_name, v_sal,
                    SYSDATE, v_deptno, 'IT_PROG', v_name || '@daum.net');
    
END;
/

SELECT *
FROM employees
WHERE last_name = '김';

 

728x90

'데이터베이스' 카테고리의 다른 글

27일차//[Oracle] FUNCTION 정리  (0) 2021.02.18
27일차//[Oracle] PROCEDURE 정리  (0) 2021.02.18
27일차//[Oracle] PL 기초  (0) 2021.02.18
26일차//[Oracle] index  (0) 2021.02.17
26일차//[Oracle] TABLE 생성 (종합 예제)  (0) 2021.02.17