I have a table that has been designed wrongly.
The initial extent is 5m and next extent is 10m,etc of which both the initial and the next
extents have been used so far. I want to make the initial and next to
be 10m each.
(NOTE: I know that you can not alter a table to change the initial extent).
But my question is if I export the table, truncate it, then import it
with the idea of making all the extents one. Can I at this point change the initial
extent after I have truncated the table since there will be no data in it
before importing it back.
These are the steps I'm thinking of using:
1.Export the table
2.Truncate the table
3.Alter the table to change the initial and next extents
4.Import the table
P.S. I have always done it like this to change the next extent and it
worked great but I have not done it to change the initial extent before.
No, this will not work. In step 2., when you truncate the table, it will preserve the storage parameters and there is no way you can change the initial extent. Basicaly you have two options:
a) If you are on 8i, you can simply reebuild the table with:
ALTER TABLE blahblah ..... MOVE ....;
With this clause you can specify new storage parameters (including INITIAL) and you can rebuild online. No need to export, truncate, import....
b) If you are on pre-8i, you would have to export, drop the table, create the same table table with new storage parameters and import the data. Howevere, you would also have to take care of all constraints, grants, indexes etc... as you will loose all this with DROP command.
Jurij Modic ASCII a stupid question, get a stupid ANSI
24 hours in a day .... 24 beer in a case .... coincidence?