对表空间“SYSTEM”没有权限 ORA-00942

问题描述

尝试以图形方式创建表格时出现此错误

创建表“ELEVE”失败。 创建表失败 ORA-01950:对表空间“SYstem没有权限 ORA-00942:>表或视图不存在 ORA-06510:PL/sql:未处理的用户定义异常

解决方法

首先,您不应该在 SYSTEM 表空间中做任何事情。由于您创建的用户还没有任何对象,我建议您删除它并重新创建它,但这次通过指定另一个表空间。例如:

SQL> connect sys as sysdba
Enter password:
Connected.
SQL> select tablespace_name from dba_tablespaces;

TABLESPACE_NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS

SQL> create user ecole identified by ecole
  2  default tablespace users
  3  temporary tablespace temp
  4  quota unlimited on users;

User created.

SQL> grant create session,create table to ecole;

Grant succeeded.

SQL>

但是,如果您坚持在 SYSTEM 表空间中执行所有操作,则更改用户并在表空间上授予配额,例如

SQL> alter user ecole quota 100M on system;

User altered.

SQL>

然后创建表。

,

当您的执行用户没有系统表空间的权限时会发生这种情况,系统表空间是执行用户的默认表空间。