Oracle重命名表空间和删除表空间

在需要的情况下,可以对表空间的名称进行修改。修改表空间的名称,不会影响到表空间中的数据。但不能修改系统表空间system与sysaux名称。
重命名表空间的语法如下:
alter tablespace tablespace_name rename to new_tablespace_name;
注意:
如果表空间的状态为offline,则无法重命名表空间。
删除表空间
删除表空间需要使用drop tablespace语句,其语法如下:
drop tablespace tablespace_name [including contents[and datafiles]]
语法说明如下:
including contents
表示删除表空间的同时,删除表空间中的所有数据库对象。如果表空间中有数据库对象,则必须使用此选项。
and datafiles
表示删除表空间的同时,删除表空间所对应的数据文件。如果不适用此选项,则删除表空间实际上仅是从数据字典和控制文件中将该表空间的有关信息删除,而不会删除操作系统中与表空间对应的数据文件。

SQL> select tablespace_name,status from dba_tablespaces;

TABLESPACE_NAME                STATUS
------------------------------ ---------
SYSTEM                        ONLINE
SYSAUX                        ONLINE
UNDOTBS1                      ONLINE
TEMP                          ONLINE
USERS                          ONLINE
MYTEMP                        ONLINE
TEMPGROUP                      ONLINE
TEMPGROUP02                    ONLINE
MYBIGSPACE                    ONLINE
BLOCKSPACE                    ONLINE
INSPUR                        ONLINE
TESTSPACE                      ONLINE
TEST                          ONLINE
已选择 13 行。

SQL> alter tablespace mytemp rename to userspace;

表空间已更改。

SQL> select tablespace_name,status from dba_tablespaces;

TABLESPACE_NAME                STATUS
------------------------------ ---------
SYSTEM                        ONLINE
SYSAUX                        ONLINE
UNDOTBS1                      ONLINE
TEMP                          ONLINE
USERS                          ONLINE
USERSPACE                      ONLINE
TEMPGROUP                      ONLINE
TEMPGROUP02                    ONLINE
MYBIGSPACE                    ONLINE
BLOCKSPACE                    ONLINE
INSPUR                        ONLINE
TESTSPACE                      ONLINE
TEST                          ONLINE

已选择 13 行。

SQL> drop tablespace userspace
  2  including contents and datafiles;
表空间已删除。

相关推荐