ORA-01950: 表領域TESTに対する権限がありません。

 

これはとあるテーブルにデータをinsertしようとして出たエラー

quotaは設定した記憶があったのでおかしいと思っていたら、TEST表領域にテーブルを作成していた。

想定では、別の表領域(仮にTEST2)とする。

 

当然、以下のSQLで確認しても、割り当てられた権限は出てこない。

select username,tablespace_name,max_bytes/1024/1024 from dba_ts_quotas where username='TEST';

 

TABLESPACE_NAME MAX_BYTE/1024/1024

------------------ -------------------

TEST2                      100

 

表領域を移動して無事解決

alter table test_table move tabelspace TEST2;

 

ちなみに、TEST表領域に使用できるリソースを付与することでも、解決できる。

conn / as sysdba

alter user TEST_USER quota 100m on TEST;

 

以上、ORA-01950が出たときに対処した方法でした。