在Oracle中如果刪除了表中的某一條數據,還可以通過回滾操作(rollback)進行回滾,假如想清空一張
表的數據,但是又不想使其能進行回滾操作,就可以立刻釋放資源,這時就需要使用截斷表了。它的主要功能就是徹底刪除數據,使其不能進行回滾。這裡我打個比方大家就立刻能明了它的作用。大家眾所周知,當我們在自己的PC(personcomputer)上刪除某一個文件,它並沒有徹底刪除而是進入了回收站,你要在回收站中再將其刪除才算徹底清除。截斷表就相當於直接將數據從pc上刪除,而不會放入回收站。
截斷表格式:
truncatetable表名。
假如我們創建了一個tb_AW表
createtabletb_AW(
namevarchar(10),
sexvarchar(2)default'女'
);
插入數據
insertintotb_AW(name,sex)values('Joe','男');
insertintotb_AW(name,sex)values('周欣紅','女');
查看表:
select*fromtb_AW;
現在進行截斷
truncatetabletb_AW;;
為了確定表格是否已釋放,我們回滾查看下
rollback;
輸出結果:
注意這裡回滾後,無法查到tb_AW表中的信息了,說明它已經徹底刪除了,這就是截斷表的功能。