您好,登錄后才能下訂單哦!
1,刪除表 drop
1.1 執行drop table table_name 語句
被 drop后的表被放在用戶回收站(user_recyclebin)里,而沒有被直接刪除掉,回收站里的表可以被恢復。 通過查詢回收站user_recyclebin獲取被刪除的表信息,然后使用語句 如下語句:
flashback table user_recyclebin.object_name [ user_recyclebin.original_name ] to before drop [ rename to new_table_name ];
將回收站里的表恢復為原名稱或指定新名稱。
1.2 若要徹底刪除表,則使用語句: drop table table_name purge;
該語句表示: 不放入回收站,直接刪除。
1.3 drop含有外鍵的表
drop table table_name cascade constraints;
---也稱為稱為級聯刪除 , 何相關視圖和完整性約束一并被刪除。
2,刪除表中的數據
2.1 delete
delete 操作適用于刪除表中的部分數據,而不是全部的數據。如果使用delete刪除表中的所有行,表中的數據雖然被刪除,單是高水位線并不會被釋放。
2.2 truncate操作是把表里的信息全部刪除,并將高水位線置為0,同時截除表上的相關索引
。
truncate table table_name;
Truncate不支持回滾,
不能truncate一個帶有外鍵的表,如果要刪除首先要取消外鍵,然后再刪除。
truncate table 后,有可能表空間仍沒有釋放。
可以使用如下語句釋放:
???????alter table table_name deallocate UNUSED KEEP 0;
alter table emp deallocate UNUSED KEEP 0;
或者在清除數據時,一并回收存儲空間:
TRUNCATE TABLE table_name DROP(REUSE) STORAGE;
例如: truncate table test1 DROP STORAGE;
注明:本博文系總結多個博文和Oracle專業文檔,并經過本人驗證總結而成,如有侵權請聯系本人加以注明。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。