2013년 11월 26일 화요일

오라클 11g : 읽기전용 테이블 (Oracle11g readonly Table이란),ALTER TABLE table_name READ ONLY 이전 버전의 오라클에서는 테이블은 다른 사용자에게 SELECT 오브젝트 권한을 주는 경우에만 읽기전용이 가능했고 해당 Owner는 테이블에 Read/Write 둘 다 가능했으며 읽기전용으로 만드는 것은 불가능 했다. 오라클 11g에서부터 alter table 테이블명 read only 명령으로 읽기전용으로 변경이 가능하다, [형식] ALTER TABLE table_name READ ONLY; ALTER TABLE table_name READ WRITE; SQL>reate table readtest as select rownum id, '홍길동'||rownum name from dual; SQL>select * from readtest; SQL> alter table readtest read only; 테이블이 변경되었습니다. SQL> insert into readtest values (2, '김길동'); insert into readtest values (2, '김길동') * 1행에 오류: ORA-12081: "SCOTT"."READTEST" 테이블에 작업을 갱신하는 것이 허용되지 않습니다 SQL> delete from readtest; delete from readtest * 1행에 오류: ORA-12081: "SCOTT"."READTEST" 테이블에 작업을 갱신하는 것이 허용되지 않습니다 SQL> truncate table readtest; truncate table readtest * 1행에 오류: ORA-12081: "SCOTT"."READTEST" 테이블에 작업을 갱신하는 것이 허용되지 않습니다 SQL> alter table readtest read write; 테이블이 변경되었습니다. SQL> truncate table readtest; 테이블이 잘렸습니다. [출처] 오라클자바커뮤니티 - http://www.oraclejavanew.kr/bbs/board.php?bo_table=LecOracle&wr_id=219 [오프라인 개강예정강좌, 오프라인교육장에 오시면 보다 자세히 배울 수 있습니다.] 오라클자바커뮤니티에서 운영하는 개발자 전문교육 ,개인80%환급(www.onjprogramming.co.kr) [주간] [12/02]안드로이드개발자과정 [12/02]iPhone 하이브리드 앱 개발 실무과정 [12/09][기업100%환급]Spring Framework,MyBatis,Hibernate실무프로젝트과정 [12/16][기업100%환급]PL/SQL,ORACLE HINT,TUNING [12/23][기업100%환급]자바기초에서 JDBC, Servlet/JSP까지 [12/23][기업100%환급]SQL기초에서 Schema Object까지 [평일야간] [12/03]웹퍼블리싱 마스터 [12/03]iPhone하이브리드앱개발실무과정 [12/04]SQL초보에서실전전문가까지 [12/05]Spring3.X, MyBatis, Hibernate실무과정 [12/09]C#,ASP.NET마스터 [12/09]JAVA&WEB프레임워크실무과정 [12/12]자바초보에서안드로이드까지 [주말] [11/30]SQL초보에서전문가까지 [11/30]C#,ASP.NET마스터 [12/07]Spring3.X,MyBatis,Hibernate실무과정 [12/14]자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지 [12/14]자바초보에서안드로이드까지 [12/14]웹퍼블리싱 마스터

오라클 11g : 읽기전용 테이블 (Oracle11g readonly Table이란),ALTER TABLE table_name READ ONLY


이전 버전의 오라클에서는 테이블은 다른 사용자에게 SELECT 오브젝트 권한을 주는 경우에만 읽기전용이 가능했고 해당 Owner는 테이블에 Read/Write 둘 다 가능했으며 읽기전용으로 만드는 것은 불가능 했다.

오라클 11g에서부터 alter table 테이블명 read only 명령으로 읽기전용으로 변경이 가능하다,

[형식]
ALTER TABLE table_name READ ONLY;
ALTER TABLE table_name READ WRITE;


SQL>reate table readtest
as
select rownum id, '홍길동'||rownum name from dual;

SQL>select * from readtest;

SQL> alter table readtest read only;

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

SQL> insert into readtest values (2, '김길동');
insert into readtest values (2, '김길동')
            *
1행에 오류:
ORA-12081: "SCOTT"."READTEST" 테이블에 작업을 갱신하는 것이 허용되지 않습니다


SQL> delete from readtest;
delete from readtest
            *
1행에 오류:
ORA-12081: "SCOTT"."READTEST" 테이블에 작업을 갱신하는 것이 허용되지 않습니다


SQL> truncate table readtest;
truncate table readtest
               *
1행에 오류:
ORA-12081: "SCOTT"."READTEST" 테이블에 작업을 갱신하는 것이 허용되지 않습니다


SQL> alter table readtest read write;

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

SQL> truncate table readtest;

테이블이 잘렸습니다.

 

[오프라인 개강예정강좌, 오프라인교육장에 오시면 보다 자세히 배울 수 있습니다.]

오라클자바커뮤니티에서 운영하는 개발자 전문교육 ,개인80%환급(
www.onjprogramming.co.kr)

[주간]
  [12/02]안드로이드개발자과정
  [12/02]iPhone 하이브리드 앱 개발 실무과정
  [12/09][기업100%환급]Spring Framework,MyBatis,Hibernate실무프로젝트과정
  [12/16][기업100%환급]PL/SQL,ORACLE HINT,TUNING
  [12/23][기업100%환급]자바기초에서 JDBC, Servlet/JSP까지
  [12/23][기업100%환급]SQL기초에서 Schema Object까지

[평일야간]
  [12/03]웹퍼블리싱 마스터
  [12/03]iPhone하이브리드앱개발실무과정
  [12/04]SQL초보에서실전전문가까지
  [12/05]Spring3.X, MyBatis, Hibernate실무과정
  [12/09]C#,ASP.NET마스터
  [12/09]JAVA&WEB프레임워크실무과정
  [12/12]자바초보에서안드로이드까지

[주말]
  [11/30]SQL초보에서전문가까지
  [11/30]C#,ASP.NET마스터
  [12/07]Spring3.X,MyBatis,Hibernate실무과정
  [12/14]자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
  [12/14]자바초보에서안드로이드까지
  [12/14]웹퍼블리싱 마스터

댓글 없음:

댓글 쓰기