4.9 전역 임시 테이블

  • 전역 임시 테이블(Global Temporary Table)은 세션 레벨의 임시 데이터를 저장하는 용도
  • 오라클의 실행 계획을 저장하기 위한 Plan 테이블이 전역 임시 테이블의 대표적인 사례
  • 세션 레벨의 임시 데이타 저장하기 때문에 RAC 시스템에서 글로벌 동기화 불필요

-- GLOBAL TEMPORARY TABLE 생성
SQL> create global temporary table TEST_TEMPORARY (
    TEST_CD NUMBER(6) ) ON COMMIT DELETE ROWS ;
-- TRANSACTION 단위로 DATA 가 유지됨
-- ON COMMIT PRESERVE ROWS
-- 의 경우엔 SESSION 단위로 DATA 가 유지됨

-- TEMPORARY TABLE 에 대해서 INDEX 생성 하기 
SQL> CREATE UNIQUE INDEX XPKTEST_TEMPORARYON TEST_TEMPORARY ( TEST_CD ) ;

-- TEMPORARY TABLE 에 대해서 PRIMARY KEY 설정 하기
ALTER TABLE TEST_TEMPORARY ADD( CONSTRAINT XPKTEST_TEMPORARY PRIMARY KEY ( TEST_CD));

11g New

▶11G Tablespace Option for Creating Temporary Table
● Starting with Oracle Database 11g, Specify which temporary
tablespace to use for your global temporary tables.
● Decide a proper temporary extent size.