Tablespace quota
is the storage allocated for an user in a tablespace. Once the user reaches the max allocated space it will throw an error like this.
SQL> select tablespace_name,username,bytes/1024/1024,max_bytes/1024/1024 from dba_ts_quotas where username='LEARNOMATE';
TABLESPACE_NAME USERNAME BYTES/1024/1024 MAX_BYTES/1024/1024
----------------------- -------- --------------- -------------------
USER LEARNOMATE 12 20
Here LEARNOMATE user can use maximum upto 20MB space of USER table space. Currently it used upto 12MB.
SQL> create table TEST tablespace USER as select * from dba_objects;
create table TEST tablespace USER as select * from dba_objects
*
ERROR at line 1:
ORA-01536: space quota exceeded for tablespace 'USER'
Now to fix it , increase the quota for that user.
SQL> alter user LEARNOMATE quota 50M on USER;
User altered.
SQL> select tablespace_name,username,bytes/1024/1024,max_bytes/1024/1024 from dba_ts_quotas where username='LEARNOMATE';
TABLESPACE_NAME USERNAME BYTES/1024/1024 MAX_BYTES/1024/1024
----------------------- -------- --------------- -------------------
USER LEARNOMATE 12 50
Now create the object
SQL> create table TEST tablespace USER as select * from dba_objects;
Table created.
SQL> select tablespace_name,username,bytes/1024/1024,max_bytes/1024/1024 from dba_ts_quotas where username='LEARNOMATE';
TABLESPACE_NAME USERNAME BYTES/1024/1024 MAX_BYTES/1024/1024
----------------------- -------- --------------- -------------------
USER LEARNOMATE 24 50
Object created successfully.