alter table deallocate unused ?
A trial :
1. create table ta ( a number , b number)
2. begin
for i in 1..400 loop
insert into ta values ( 1, 1);
commit;
end loop;
end;
3. select * from user_segments where segment_name = 'TA'
bytes blocks Extents
71680 35 4
4. delete from ta ;
commit;
select * from user_segments where segment_name = 'TA'
bytes blocks Extents
71680 35 4
--> the hwm is not reset
5. alter table ta deallocate unused
bytes blocks Extents
61440 30 4
To be very surprised , although I delete all the records then issue deallocate command , only 5 blocks space has been withdrawed . what happen to the left 30 blocks ? I guess it's a bug of oracle7.3 .