2014-04-06 3 views
3

다음 명령을 시도했지만 여전히 appts의 테이블에 삽입 할 수 있습니다. 왜?사용자가 테이블 공간에서 공간을 사용하지 못하게하는 방법은 무엇입니까?

[email protected]@SQL> alter user michael quota 0M on appts; 

User altered. 

[email protected]@SQL> select tablespace_name,max_bytes from user_ts_quotas; 

TABLESPACE_NAME    ,  MAX_BYTES 
------------------------------,---------------- 
APPTS       ,    0 


[email protected]@SQL> select tablespace_name,table_name from user_tables; 

TABLESPACE_NAME    ,TABLE_NAME 
------------------------------,------------------------------ 
APPTS       ,TEST_D 
.... 


[email protected]@SQL> insert into test_d values(292,'Test',500,2100); 

1 row created. 
+0

oracle에서 생성 된 테이블에는 최소 크기 (몇 바이트)가 있습니다. 따라서 세그먼트를 확장하지 않고 수백 개의 행을 포함 할 수 있습니다. 동일한 실험을 시도하지만 수천 개의 행을 생성하십시오. – haki

+0

새 테이블을 만들거나 지연된 세그먼트 생성이있는 기존 테이블을 만들어보십시오. haki가 제안한 것처럼 새 세그먼트가 필요할 때 할당량이 적용됩니다. –

답변

1

ALTER TABLESPACE를 (를) 읽기 전용으로 사용하는 것은 어떻습니까? 다음을 입력 할 수 있습니다.

ALTER TABLESPACE APPTS READ ONLY 
관련 문제