2012-07-05 30 views
4

我有一臺名爲test其中有3列:甲骨文刪除列和未使用的列

  1. 名稱
  2. ID
  3. 地址

過了一段時間,我知道一列不正在使用。我想放下一列,比如說id

Oracle有一個功能可以將一列標識爲unused。什麼是drop列與設置unused列的差異?

回答

6

當您放置一列時,它將進入回收站,而當您將一個列標記爲未使用時,它就像邏輯上刪除它,但在物理上保留它。

有時將某個列標記爲未使用,然後使用alter table name drop未使用的列語句非常有用,因爲它允許DBA快速立即取消列訪問。稍後,在日常數據庫維護週末或營業時間之後,您可以使用alter table name drop unused列刪除列以回收空間。

另一方面,標記未使用的列不會釋放任何空間,當需要釋放空間並移除不需要的列時,最好放棄它。

+2

不,刪除列會將其完全刪除 - 列沒有回收站。 – 2012-07-12 06:34:37

1

這是爲了方便起見,居然......

看到here

設置爲「未使用」就像下降,但可以讓你的實際物理刪除推遲至稍後日期。

0

這是DBA維護窗口的幫助,不適合您一般使用。對於開發者來說,這意味着DROP列。就是這樣,以後沒有恢復點。相反,如果你在12 c,然後使用INVISIBLE選項。