첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170

■ 중첩 테이블을 테이블 컬럼으로 저장하는 방법을 보여준다.

 

▶ 예제 코드 (SQL)

-- 색상 중첩 테이블 타입을 생성한다.
CREATE TYPE COLOR_TABLE_TYPE IS TABLE OF VARCHAR2(30);

-- 색상 모델 테이블을 생성한다.
CREATE TABLE COLOR_MODEL
(
    MODEL_TYPE       VARCHAR2(10)
   ,NAME_COLOR_TABLE COLOR_TABLE_TYPE
)
NESTED TABLE NAME_COLOR_TABLE STORE AS NAME_COLOR;

-- 색상 모델 테이블에 데이터를 추가한다.
INSERT INTO COLOR_MODEL VALUES ('RGB', COLOR_TABLE_TYPE('RED', 'GREEN', 'BLUE'));

SET SERVEROUTPUT ON;

DECLARE
    -- 색상 중첩 테이블 변수를 정의한다.
    V_NAME_COLOR_TABLE COLOR_TABLE_TYPE;
BEGIN
    -- 색상 모델 테이블에서 모델 타입이 'RGB'인 레코드를 조회해 색상 중첩 테이블 변수에 설정한다.
    SELECT NAME_COLOR_TABLE INTO V_NAME_COLOR_TABLE
    FROM   COLOR_MODEL
    WHERE  MODEL_TYPE = 'RGB';

    FOR I IN 1..V_NAME_COLOR_TABLE.COUNT
    LOOP
        DBMS_OUTPUT.PUT_LINE(V_NAME_COLOR_TABLE(I));
    END LOOP;
END;

/*
REG
GREEN
BLUE
*/
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요