ORACLE SQL

[ORACLE] SQL - 프로시저 (매개변수가 1개인 경우, 2개인 경우)

그릿GRIT 2021. 3. 21. 12:36
728x90

*제 자신의 이해를 돕기 위해 프로시저 이름을 무의미하게 만들었음을 미리 알려드립니다.*

 

<매개변수가 1개만 있는 프로시저 예시>

프로시저를 생성할때  명령문 실행(ctrl+enter)가 아닌 스크립트 실행(f5)를 사용합니다.

1
2
3
4
5
6
7
8
9
10
11
12
CREATE OR REPLACE procedure hh (f_name in employees.first_name%type)
as
v_sal number(10);
begin
    select salary
    into v_sal 
    from employees 
    where first_name = f_name;
    
   dbms_output.put_line(f_name||' '||v_sal);   
end hh;
/
cs

 

아래 execute를 사용하여 실행하면 됩니다.

1
execute hh('Bruce');
cs

 

<매개변수가 2개 있는 프로시저 예시>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CREATE OR REPLACE procedure hh (
v_fname in employees.first_name%type,
v_lname in employees.last_name%type
)
as
    v_sal number(10);
begin
    select salary
    into v_sal 
    from employees 
    where first_name = v_fname
    and last_name = v_lname;
    
    dbms_output.put_line(v_fname||' '||v_lname||' '||v_sal);   
end hh;
/
cs

아래 execute를 사용하여 실행하면 됩니다.

1
execute hh('Bruce','Ernst');
cs