728x90
# LOOP문
l LOOP 문을 사용해야 하는 이유 – 특정 실행문을 반복해서 수행하고자 할 때 사용
l LOOP 문의 종류 3가지
- basic loop
- while loop : 조건이 true인 경우만 반복
- for loop
문제36. 아래의 테이블을 생성하고 empno에 1~50000 만번까지 숫자를 입력하고 ename에는 scott를 입력하시오
CREATE TABLE emp440
(empno NUMBER(10),
ename VARCHAR2(20));
SET serveroutput ON
DECLARE
v_count NUMBER(10) := 1;
BEGIN
LOOP
v_count := v_count+1;
INSERT INTO emp440
VALUES (v_count,'SCOTT');
EXIT WHEN v_count = 50000;
END LOOP;
END;
/
l basic loop는 exit when 절을 안쓰면 무한루프를 돌게된다.
문제37. 방금 수행한 문제36번을 while loop 문으로 수행하시오
SET serveroutput ON
DECLARE
v_count NUMBER(10) := 1;
BEGIN
WHILE v_count<50000 loop="" o:p="">
v_count := v_count+1;
INSERT INTO emp440
VALUES (v_count,'SCOTT');
END LOOP;
END;
/
l basic loop 보다 무한루프 위험에서 줄어듦
마지막문제1. 오늘까지 배운 내용으로 구구단 3단과 4단과 5단을 출력하시오
SET serveroutput ON
DECLARE
v_count NUMBER(10) := 0;
BEGIN
WHILE v_count<9 loop="" o:p="">
v_count := v_count+1;
dbms_output.put_line ('3*' || v_count || '=' || 3*v_count);
END LOOP;
v_count := 0;
WHILE v_count<9 loop="" o:p="">
v_count := v_count+1;
dbms_output.put_line ('4*' || v_count || '=' || 4*v_count);
END LOOP;
v_count := 0;
WHILE v_count<9 loop="" o:p="">
v_count := v_count+1;
dbms_output.put_line ('5*' || v_count || '=' || 5*v_count);
END LOOP;
END;
/
'빅데이터과정 > PL/SQL ' 카테고리의 다른 글
#10_140626_PL_SQL_FOR 문 (0) | 2014.07.14 |
---|---|
#9_140625_PL_SQL_CASE 문 (0) | 2014.07.14 |
#9_140625_PL_SQL_IF 문 (0) | 2014.07.14 |
#9_140625_PL_SQL_진리연산표 (0) | 2014.07.14 |
#9_140625_PL_SQL_변수의 데이터 유형 (0) | 2014.07.14 |