删除表空间

Oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645
当某个表空间中的数据不再需要时,或者新创建的表空间不符合要求时,可以考虑删除这个表空间。若要删除表空间,则需要用户具有 DROP TABLESPACE权限。
在默认情况下, Oracle 系统不采用 Oracle Managed Files 方式管理文 件,这样删除表空间实际上仅是从数据字典和控制文件中将该表空间的有关信息清除掉,并没有真正删除该表空间包含的所有物理文件。
因 此,要想彻底删除表空间来释放磁盘空间,那么在执行删除表空间的命 令之后,还需要手动删除该表空间包含的所有物理文件。
当Oracle 系统采用 Oracle Managed Files 方式管理文件时,删除某个 表空间后,Oracle 系统将自动删除该表空间包含的所有物理文件。
删除表空间需要使用DROP TABLESPACE 命令,其语法格式如下:

sql 复制代码
DROP TABLESPACE tbS_nae[INCLUDING CONTENTS] [CASCADE CONSTRAINT]

[V]tbs_name:表示要删除的表空间名称。[V]INCLUDING CONTENTS:表示删除表空间的同时删除表空间中的数据。

如果不指定INCLUDING CONTENTS参数,而该表空间又存在数据时,则Oracle会提示错误。

[V] CASCADECONSTRAINTS:表示当删除当前表空间时也删除相关的完整性限制。

完整性限制包括主键及唯一索引等。如果完整性存在,而没有CASCADE CONSTRAINTS参数,则Oracle会提示错误,并且不会删除该表空间。

接下来通过一个例子来演示如何删除一个表空间,

删除表空间及其包含的所有内容

在上面的代码中,不但删除了表空间tbs_test 1,而且也删除了表空间中的数据(including contents)和完整性约束(cascade constraints)

相关推荐
xmh-sxh-1314几秒前
java 数据存储方式
java
liu_chunhai13 分钟前
设计模式(3)builder
java·开发语言·设计模式
姜学迁22 分钟前
Rust-枚举
开发语言·后端·rust
冷白白23 分钟前
【C++】C++对象初探及友元
c语言·开发语言·c++·算法
凌云行者27 分钟前
rust的迭代器方法——collect
开发语言·rust
bug菌¹29 分钟前
滚雪球学Oracle[6.2讲]:Data Guard与灾难恢复
数据库·oracle·data·灾难恢复·guard
It'sMyGo30 分钟前
Javascript数组研究09_Array.prototype[Symbol.unscopables]
开发语言·javascript·原型模式
一般路过糸.32 分钟前
MySQL数据库——索引
数据库·mysql
睡觉然后上课41 分钟前
c基础面试题
c语言·开发语言·c++·面试
qing_0406031 小时前
C++——继承
开发语言·c++·继承