Oracle/Administration2012. 5. 1. 14:31

12.1 버전에 추가된 READ ONLY 테이블을 테스트해보자.


테스트를 위해 아래와 같이 테이블을 생성하자. *_TABLES 뷰의 read_only 열이 YES로 표시된다.

-- 1-1
DROP TABLE t1 PURGE;
CREATE TABLE t1 (c1 NUMBER) READ ONLY;

-- 1-2
SELECT read_only FROM user_tables WHERE table_name = 'T1';

READ_ONLY
---------
YES

1개의 행이 선택되었습니다.

INSERT, UPDATE, DELETE, TRUNCATE 문은 에러가 발생한다. ALTER TABLE, DROP TABLE 문이 수행되는 것은 의외의 결과다.

-- 2-1
INSERT INTO t1 VALUES (1);

ORA-12081: "TUNA"."T1" 테이블에 작업을 업데이트하는 것이 허용되지 않습니다

UPDATE t1 SET c1 = 1;

ORA-12081: "TUNA"."T1" 테이블에 작업을 업데이트하는 것이 허용되지 않습니다

-- 2-3
DELETE FROM t1;

ORA-12081: "TUNA"."T1" 테이블에 작업을 업데이트하는 것이 허용되지 않습니다

-- 2-4
TRUNCATE TABLE t1;

ORA-12081: "TUNA"."T1" 테이블에 작업을 업데이트하는 것이 허용되지 않습니다

-- 2-5
ALTER TABLE t1 ADD c2 NUMBER;

테이블이 변경되었습니다.

-- 2-6
DROP TABLE t1 PURGE;

테이블이 삭제되었습니다.


'Oracle > Administration' 카테고리의 다른 글

CHECK 제약조건 적용 사례  (0) 2012.05.22
PK 제약조건과 인덱스 #1  (0) 2012.05.18
RANGE 파티션 통계정보 관리 패키지  (0) 2012.05.10
INVISIBLE 인덱스  (0) 2012.05.02
DDL TRIGGER 감사 기능  (0) 2012.05.01
Posted by 정희락_