IMPORT_INDEX_STATS
The IMPORT_INDEX_STATS procedure retrieves the statistics of a specified index from the user statistics table and stores them in the dictionary.
Syntax
DBMS_STATS.IMPORT_INDEX_STATS (
ownname VARCHAR2,
indname VARCHAR2,
partname VARCHAR2 DEFAULT NULL,
stattab VARCHAR2,
statown VARCHAR2 DEFAULT NULL,
no_invalidate BOOLEAN DEFAULT FALSE,
force BOOLEAN DEFAULT FALSE,
tabname VARCHAR2 DEFAULT NULL);
Parameters
| Parameter | Description |
|---|---|
| ownname | The username. If ownname is set to NULL, the current login username is used by default. |
| tabname | The table name. |
| indname | The index name. |
| partname | The partition name. If the table is partitioned and partname is NULL, global and partition column statistics are imported. |
| stattab | The name of the user statistics table to import. |
| statown | The username of the user statistics table to import. |
| no_invalidate | Specifies whether to invalidate the Plan Cache when collecting statistics. If set to TRUE, the Plan Cache is not invalidated when collecting statistics. |
| force | Specifies whether to forcibly import the statistics, ignoring the lock status. The default value is FALSE. If set to TRUE, the index statistics are imported even if they are locked. |
Exceptions
| Error code | Description |
|---|---|
| HY000 |
|
Usage notes
Statistics cannot be exported or imported between databases with different character sets.
Examples
Import the statistics of the idx1 index of the tbl1 table for the testUser01 user from the test_stat table and store them in the dictionary.
CALL DBMS_STATS.CREATE_STAT_TABLE('testUser01', 'test_stat');
Query OK, 0 rows affected
CALL DBMS_STATS.IMPORT_INDEX_STATS('testUser01', 'idx1',stattab=>'test_stat',tabname=>'tbl1',no_invalidate=>FALSE);
Query OK, 0 rows affected
info
seekdb requires explicit specification of the table name because indexes are not unique under the current user.