오라클 프로시져 기본 문법
1. IF 제어문
IF [조건] THEN |
2. SELECT값 변수에 담기
V_COUNT NUMBER(10); |
3. FOR ~ LOOP문
1) 형식 LOOP; |
4. CURSOR
1) DECLARE CURSOR [CUR_NAME] IS 쿼리 : 실행절에서 원하는 CURSOR를 OPEN : 실제 데이터가 저장되어 있는 FILE과 연결 3) DATA FETCH : 레코드를 메모리로 가지고 오는 역활 4) CURSOR CLOSE |
4-1. CURSOR 의 속성
[CUR_NAME]%ISOPEN >> 현재 지정한 커서가 열려있는지 여부를 TRUE와 FALSE [CUR_NAME]%NOTFOUND >> FETCH할 데이터가 없으면 TRUE [CUR_NAME]%FOUND >> FETCH할 데이터가 있으면 TRUE [CUR_NAME]%ROWCOUNT >> 현재까지 반환된 모든 레코드 수 |
4-2 커서 예
CURSOR C1 IS
FOR CUR_DT IN C1 LOOP --C1을 한번 패치하여 CUR_DT 에 넣는다. DBMS_OUTPUT.PUT_LINE(CUR_DT.AA|| ' '||CUR_DT.BB); END LOOP; END;
OPEN MM_CUR; |
4.3
CURSOR C2_COLUMNS( W_TAB_ID VARCHAR2 ) IS |
4-4. 커서 예
CREATE OR REPLACE PROCEDURE "SP_TEST"( ; I_MAX_LAY NUMBER(2); (AA,BB) ); CLOSE c1;
|
5. 동적 쿼리 생성 및 실행
W_SQL_BLOCK VARCHAR2(4000);
begin
execute immediate ′select count(1) from emp′
execute immediate 'insert into temp(empno, ename) ' || |
'SQL > ORACLE함수' 카테고리의 다른 글
[오라클함수] 오라클 DECODE함수 사용하기 (0) | 2014.06.11 |
---|---|
[오라클함수] GROUP BY 컬럼..컬럼 사용하기 (0) | 2014.06.11 |
[오라클함수] DB LINK 연결 사용 (0) | 2014.06.11 |
[오라클함수] 오라클 행열 바꾸기(CASE WHEN, MAX함수 사용) (0) | 2014.06.11 |
[오라클함수] TRUNC함수를 이용한 소숫점, 날짜 형식 짜르기 (0) | 2014.06.11 |
오라클 EXISTS함수, NOT EXISTS, MINUS (2) | 2014.06.11 |
오라클 - 데이터 가져오기편 1 (0) | 2014.06.11 |
오라클 - 함수 공부 1 (0) | 2014.06.11 |