drop 刪除 :(1)、刪除表中的數據,同時表結構也被刪除
(2)、釋放表空間
drop table 表名 ;
delete 刪除:(1)、只刪除表中的數據,不刪除表結構(系統刪除的過程是一行一行的刪除,效率比 truncate 低)
(2)、不釋放表空間
(3)、rollback命令可撤銷
delete from 表名 where 條件 ;
truncate 刪除:(1)、只刪除表中的數據,不刪除表結構(系統一次性刪除表中的所有數據,效率比較高)
(2)、釋放表空間
(3)、rollback命令不可撤銷
truncate table 表名 ;
刪除表中的數據:
select t.rowid, t.* from 表名 t ;
select * from 表名 for update ;
執行完上述語句,表的鎖標志為打開的,點擊➖
最后點擊綠色的對號,提交
1、Oracle刪除表,是把表放進回收站
drop table 表名;(刪除普通表)
drop table 表名 cascade constraints; (刪除帶有約束的表)
//查看回收站刪除的對象
select * from recyclebin;
2、清空回收站的表
purge recyclebin;
//一次性徹底刪除表(不會把該表放進回收站)
drop table 表名 purge;
3、從回收站中還原被刪除的表
flashback table 表名 to before drop
//還原並重命名該表
flashback table 表名 to before drop rename to 重命名后
//關於回收站
在oracle中,刪除表時沒有真正刪除表而是把表重命名放進了回收站。可使用purge 命令來清空回收站,將會釋放表占用的表空間,返回給表空間成為自由空間;
一旦表空間吃緊,oracle 會自動清空回收站中的對象,在oracle清空回收站前可以找回刪除的對象;
參考:(1)、https://blog.csdn.net/huangbaokang/article/details/90665653
(2)、https://www.cr173.com/html/40708_1.html