Snippet Name: INDEXES: Alter index
Description: Example of altering an index (rename, collect statistics, etc).
Also see: » INDEXES: View table indexes
» INDEXES: Analyze Index
» INDEXES: Block Dump
» INDEXES: Rebuild Reverse
» INDEXES:
» INDEXES: ENABLE (function-based index)
» INDEXES: DISABLE (function-based index)
» INDEXES: Alter Index Parallel
» INDEXES: Alter Index Deallocate Unused
» INDEXES: Alter Index Allocate Extent
» INDEXES: Virtual / NoSegment
» INDEXES: Reverse Key Indexes
» INDEXES: Bitmap Join Indexes
» INDEXES: Bitmap Indexes
» INDEXES: Unique indexes
» INDEXES: Parallel Index
» INDEXES: Compute Statistics
» INDEXES: SORT and NOSORT
» INDEXES: Function-Based Index
» INDEXES: DROP index
» INDEXES: Single Column Non-unique
» INDEXES: Index Usage Notes
» Compressed Indexes
» Create INDEX
Comment: (none)
Language: PL/SQL
Highlight Mode: PLSQL
Last Modified: March 10th, 2009
|
ALTER INDEX index_name
RENAME TO new_index_name;
-- for example:
ALTER INDEX supplier_sales
RENAME TO supplier_metrics;
-- rename the index called supplier_sales to supplier_metrics.
-- you can use the ALTER INDEX command to collect statistics if
-- none were collected when the index was created
-- syntax for collecting statistics on an index is:
ALTER INDEX index_name
REBUILD COMPUTE STATISTICS;
-- for example:
ALTER INDEX supplier_metrics
REBUILD COMPUTE STATISTICS;
-- Alter index monitor usage
-- syntax:
ALTER INDEX <index_name> MONITORING USAGE;
-- for example:
ALTER INDEX idx_city_state MONITORING USAGE;
exec DBMS_STATS.some_stats(OWNNAME=>'REGION', INDNAME=>'IDX_CITY_STATE');
SELECT COUNT(*)
FROM city_state
WHERE city = 'TULSA';
SELECT *
FROM v$object_usage;
ALTER INDEX idx_city_state NOMONITORING USAGE;
-- Alter index, rebuild and change tablespace
-- syntax:
ALTER INDEX <index_name>
REBUILD TABLESPACE <tablspace_name>;
-- for example:
SELECT index_name, tablespace_name
FROM user_indexes;
ALTER INDEX idx_city_state
REBUILD TABLESPACE sales_us;
SELECT index_name, tablespace_name
FROM user_indexes;
|