게시일: Nov 15, 2011 10:53:29 PM
- IF 문
[구문 형식]
if 조건1 then
처리문1
elsif 조건2 then
처리문2
elsif 조건3 then
처리문3
else
처리문
end if;
- CASE 문
SQL에서 사용하는 case문과 동일하게 사용. 다만 마지막 문장을 end에서 end case로 사용해야함.
case grade
When 'A' then
dbms_output.put_line('Good job');
when 'B' then
dbms_output.put_line('It'''s B');
end case;
- LOOP 문
[구문 형식]
loop
처리문
end loop;
declare
iNumber integer;
iTempNum integer;
begin
iTempNum := 1;
loop
iNumber := iTempNum * 2;
if (iNumber > 20) then
Exit; -- exit when iNumber > 20;과 동일
else
dbms_output.put_line(iNumber);
end if;
iTempNum := iTempNum + 1;
end loop;
end;
- WHILE LOOP 문
[구문 형식]
while 조건 loop
처리문
end loop;
declare
iNumber integer;
iTempNum integer;
begin
iTempNum := 1;
iNumber := 0; -- 초기화하지 않으면 null로 인식해서 아래의 while 문을 수행하지 않는다.
while iNumber <= 20 loop
iNumber := iTempNum * 2;
dbms_output.put_line(iNumber);
iTempNum := iTempNum + 1;
end loop;
end;
- FOR ... LOOP 문
[구문 형식]
FOR 카운터 IN [REVERSE] 최소값..최대값 LOOP
처리문
END LOOP;
for i in 1..10 loop
dbms_output.put_line(i);
end loop;
for i in reverse 1..10 loop
dbms_output.put_line(i);
end loop;
: for문 안에 exit when 문장도 사용 가능하다.