The IMPORT_COLUMN_STATS procedure is used to import column-level statistics.
Syntax
DBMS_STATS.IMPORT_COLUMN_STATS (
ownname VARCHAR2,
tabname VARCHAR2,
colname VARCHAR2,
partname VARCHAR2 DEFAULT NULL,
stattab VARCHAR2,
statown VARCHAR2 DEFAULT NULL,
no_invalidate BOOLEAN DEFAULT FALSE,
force BOOLEAN DEFAULT FALSE);
Parameters
| Parameter | Description |
|---|---|
| ownname | The username. If the username is set to NULL, the current logged-in username will be used by default. |
| tabname | The name of the table to which this column belongs. |
| colname | The column name. |
| partname | The name of the table partition. If the table is partitioned and partname is NULL, then global and partition column statistics are imported. |
| stattab | The name of the user statistics table to be imported. |
| statown | The username of the user statistics table to be imported. |
| no_invalidate | Specifies whether to invalidate the Plan Cache when collecting statistics. Setting it to TRUE means the Plan Cache will not be invalidated when collecting statistics. |
| force | Specifies whether to forcibly import statistics and ignore lock status. Default is FALSE. If set to TRUE, statistics will be imported even if they are locked. |
Exceptions
| Error Code | Description |
|---|---|
| HY000 |
|
Considerations
To call this procedure, you must be the owner of the table. For objects owned by SYS, you must be the owner or have the SYSDBA privilege to call this procedure.
Examples
Import the statistics for the col1 column in the tbl1 table under the testUser01 user from the test_stat table.
obclient> CALL DBMS_STATS.IMPORT_COLUMN_STATS ('testUser01', 'tbl1','col1',null, stattab=>'test_stat',
statown=>'testUser01');
Query OK, 0 rows affected
