3

I tried the following commands,but i can still insert into the table on appts. Why?

MICHAEL@orcl@SQL> alter user michael quota 0M on appts;

User altered.

MICHAEL@orcl@SQL> select tablespace_name,max_bytes from user_ts_quotas;

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


MICHAEL@orcl@SQL> select tablespace_name,table_name from user_tables;

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


MICHAEL@orcl@SQL> insert into test_d values(292,'Test',500,2100);

1 row created.
Bruno Gelb
  • 5,322
  • 8
  • 35
  • 50
  • Any table created in oracle has some minimum size (couple of bytes). So it can contain several hundreds of rows without extending the segment. Try the same experiment but generate a few thousand rows. – haki Apr 06 '14 at 11:32
  • Try creating a new table, or have a pre-existing table with deferred segment creation. The quota will be applied when a new segment is needed, as haki suggests. – Alex Poole Apr 06 '14 at 13:57

1 Answers1

1

What about using ALTER TABLESPACE to make it read only? You could enter:

ALTER TABLESPACE APPTS READ ONLY