Oracle provides a database package called dbms_redefinition to perform an online rebuild of a table.
Which two steps are you recommended to do prior to issuing the dbms _redefinition.start_redef_table procedure call? (Choose two)
A.
grant privileges on the interim table
B.
invoke the dbms_redefinition.can_redef_table procedure
C.
invoke the dbms_redefinition.sync_interim_table procedure
D.
create any triggers, indexes, or constraints on the interim table
E.
create an empty interim table with all the desired characteristics
Explanation:
To perform online redefinition of a table with the DBMS_REDEFINITION package:
1. Choose the redefinition method: by key or by rowid
2. Verify that the table can be online redefined by invoking the CAN_REDEF_TABLE procedure.(B)
3. Create an empty interim table (in the same schema as the table to be redefined) with all of the desired logical and physical attributes. (E)
4. Start the redefinition process by calling START_REDEF_TABLE, providing the following:
? The schema and table name of the table to be redefined ? The interim table name
? A column mapping string that maps the columns of table to be redefined tothe columns of the interim table
? The redefinition method.If not specified, the default method of redefinition (using keys) is assumed.
? Optionally, the columns to be used in ordering rows
? If redefining only a single partition of a partitioned table, the partition name
5. Copy dependent objects (such as triggers, indexes, grants, and constraints) and statistics from the table being redefined to the interim table,
6. Execute the FINISH_REDEF_TABLE procedure to complete the redefinition of thetable.
REF.: Oracle(r) 10g Administrator Guide, 15-22