程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> 關於Oracle數據庫 >> Oracle 10G 中的“回收站”

Oracle 10G 中的“回收站”

編輯:關於Oracle數據庫

   在Oracle 10G中,引入了一個回收站(Recycle Bin)的概念.
  
   回收站,從原理上來說就是一個數據字典表,放置用戶Drop掉的數據庫對象信息.用戶進行Drop操作的對象並沒有被數據庫刪除,仍然會占用空間.除非是由於用戶手工進行Purge或者因為存儲空間不夠而被數據庫清掉.數據庫有了這樣的功能,能夠減少很多不必要的麻煩.常常看到開發人員誤把表刪除,急急忙忙找DBA來想辦法的情況,相信,隨著10G的大范圍應用,這種情形應該比較少見了.
  
   DBA管理上的相關信息可以從USER_recyclebin(DBA_recyclebin)中獲取.從現在的Beta版本來看,手冊上所說的通過SQL*Plus的show recycle bin 命令查看還不可用.
  
   為了便於測試,我們創建了一個表空間Foo,大小為1M,創建了一個用戶Foo,默認的表空間為Foo.

  ------------------------------------
  SQL> CONNECT foo/foo
  已連接。

  SQL> SELECT table_name FROM user_tables;

  未選定行

  SQL> DESC user_recyclebin
  名稱 是否為空? 類型
  --------------------------------------
    ......
    ......
  user_recyclebin大多是自解釋的,涵義比較容易理解.

  SQL> SELECT object_name FROM user_recyclebin;

  未選定行

  SQL> CREATE TABLE foo AS SELECT * FROM DUAL;
 
  表已創建。

  SQL> SELECT table_name FROM user_tables;

  TABLE_NAME
  ------------------------------
  FOO

  SQL> DROP TABLE foo;

  表已丟棄。

  SQL> SELECT table_name FROM user_tables;

  TABLE_NAME
  ------------------------------
  RB$$41888$TABLE$0

  SQL>

  SQL> SELECT object_name, original_name FROM user_recyclebin;

  OBJECT_NAME ORIGINAL_NAME
  -------------------- --------------------
  RB$$41888$TABLE$0 FOO

  SQL> DESC RB$$41888$TABLE$0
  名稱 是否為空? 類型
  ----------------------------------------

  • 首頁
  • 上一頁
  • 1
  • 2
  • 3
  • 4
  • 下一頁
  • 尾頁
  • 共4頁
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved