我有一个名为的表test
,它有 3 列:
- 姓名
- ID
- 地址
一段时间后,我知道一列未使用。我想删除一列,比方说id
。
Oracle 有一个特性可以将列标识为unused
. drop
列与设置列有什么区别unused
?
我有一个名为的表test
,它有 3 列:
一段时间后,我知道一列未使用。我想删除一列,比方说id
。
Oracle 有一个特性可以将列标识为unused
. drop
列与设置列有什么区别unused
?
当您删除一列时,它会移动到回收站中,而当您将一列标记为未使用时,它就像在逻辑上删除它但在物理上保留它。
有时将列标记为未使用,然后使用 alter table name 删除未使用的列语句很有用,因为它允许 DBA 快速并立即取消对列的访问。稍后,在例行的数据库维护周末或工作时间之后,您可以删除具有 alter table name 的列 drop used column 以回收空间。
另一方面,将列标记为未使用不会释放任何空间,当需要释放空间并删除不需要的列时,最好放弃它。
这是对 DBA 维护窗口的帮助,一般不供您使用。对于开发人员来说,这意味着 DROP 列。就是这样,以后没有恢复点。相反,如果您在 12 c 中,则使用 INVISIBLE 选项。