1. PL/SQL?
프로시져란 DB 안에서 좀 더 다이나믹하게 데이터를 다루게 도와주는 기능이다.
프로시져는 절차적인 데이터베이스 프로그래밍 언어이며 변수, 조건문, 반복문을 더 다양하게 사용할 수 있게 해준다.
(본격적으로 DB로 프로그래밍 하기..)
더 깊숙하고 고급적인 단계를 배우려하지 않으려 한다.
기본적인 개념만 잡고 가려하니 어렵게 생각하지 않고 접근해보자.
우선 프로시져를 사용하기 위해선 콘솔창에 출력시키기 위한 아래의 사전 코드가 필요하다.
set serveroutput on;
2. PL/SQL 기본 문법
1) 변수 선언
declare -- create는 저장
-- 변수 선언
a number := 3;
b number := 5;
begin
-- 콘솔창 출력
dbms_output.put_line('* 실행 결과 *');
dbms_output.put_line(a);
dbms_output.put_line(b);
dbms_output.put_line(a+b);
dbms_output.put_line(a || '+' || b || '=' || (a+b) );
end;
세미콜론은 무시하고 declare부터 end까지 전체 영역을 잡아서 run을 시키면 출력창에 반영된다.
2) 조건문
declare
-- 성적 프로그램
uname varchar2(50) := '무궁화';
kor number := 100;
eng number := 95;
mat number := 80;
aver number := (kor+eng+mat)/3;
grade varchar2(10) := NULL;
begin
if aver>=90 then grade:='A';
elsif aver>=80 then grade:='B';
elsif aver>=80 then grade:='C';
elsif aver>=80 then grade:='D';
else grade:='F';
end if;
-- 출력
dbms_output.put_line('* 실행 결과 *');
dbms_output.put_line('이름 : ' || uname);
dbms_output.put_line('국어 : ' || kor);
dbms_output.put_line('영어 : ' || eng);
dbms_output.put_line('수학 : ' || mat);
dbms_output.put_line('평균 : ' || round(aver,2));
dbms_output.put_line('학점 : ' || grade);
end;
3) 반복문
declare
-- 구구단 출력
dan number := 4;
i number default 0;
begin
while i<10 loop
i:=i+1;
exit when i=10;
dbms_output.put_line(dan || '*' || i || '=' || (dan*i));
end loop;
end;
3. 프로시저 생성, 삭제, 호출
1) 프로시저 생성
형식) create or replace procedure 프로시저명
-- sp_test 프로시저 생성
create or replace procedure sp_test
is
begin
dbms_output.put_line('sp_test 프로시저 호출');
end;
2) 프로시저 호출
형식) execute 프로시저명
3) 프로시저 삭제
형식) drop procedure 프로시저명
'⁂ Oracle DB > : 기본 익히기' 카테고리의 다른 글
[Oracle] #6-5 인덱스(index) (0) | 2022.08.30 |
---|---|
[Oracle] #6-3 뷰(View) (0) | 2022.08.30 |
[Oracle] #6-2 계정 생성하기(dbf 파일 만들기, grant) (0) | 2022.08.30 |
[Oracle] #6-1 SQL Developer로 CSV파일 가져오기 (0) | 2022.08.29 |
[Oracle] #5-3 rownum으로 페이징하기 (0) | 2022.08.29 |