ORACLE用户建表:ORA-01950: no privileges on tablespace解决
SQL> create user gw identified by gw;
User created
SQL> grant create session to gw;
Grant succeeded
SQL> grant create table to gw;
Grant succeeded
SQL> connect gw/gw;
Connected.
SQL> create table gaowei_table(id number,name varchar2(10));
ERROR at line 1:
ORA-01950: no privileges on tablespace 'SYSTEM'
原因在于在SYSTEM表空间中没有为gw用户提供配额空间(在此默认的表空间为SYSTEM表空间),如下图所示:
此时只需要为gw在system表空间上设置配额就可以了,使用如下命令为其配额:
SQL> ALTER USER "GW" QUOTA 4 M ON "SYSTEM"
配额结果如下图所示:
然后执行创建表命名,成功,如下:
SQL> show user;
USER is "GW"
SQL> create table gaowei_table(id number,name varchar2(10));
Table created.
OK,问题解决,所以在新建用户后,不光要为用户分配一定的Create等权限,还要为用户在相应的表空间中设置磁盘配额。
转载于:https://blog.51cto.com/yytian/414142