Page 38
movement command. The cascade option can also extend to overflow segments of nonpartitioned or partitioned IOTs. You cannot shrink the following objects:
Tables that are in clusters
Any table with a Long column
A table with an on-commit materialized view
Any table with a ROWID-based materialized view
A LOB index
IOT mapping tables and IOT overflow segments
Shared LOB segments
Temporary and Undo segments
The shrink operation actually takes part in two stages. The first stage is the compaction of the data in the table. The second stage is the dropping of the high-water mark located in the table. You can perform just the compaction of the data if you like by using the compact clause of the alter command, as shown in this example:
Alter table my_table shrink space cascade compact;
NOTE
Shrinking/compacting of a table or an IOT is the same as coalescing that object.
Oracle9i introduced the ability to rebuild an Oracle table online, reducing outages associated with rebuild operations. Oracle Database 10g improves on this functionality. First, Oracle Database 10g allows you to redefine tables with CLOB and BLOB data types (but not BFILE). Also, master-master replicated tables can now be redefined online, within a somewhat restrictive set of limitations. Finally, you can now instruct Oracle on how to order the rows when you perform the initial instantiation of the interim table through the use of the orderby_cols parameter when the dbms_redefinition.start_redef_table procedure is called.