因此,我决定进行模拟并查看发生了什么(我正在学习oracle大约7个月,可能会出错),我知道在正常索引中维护了DML操作(在DML操作引起时更新了索引),但是我想检查[ C0]在DML操作中是否保持。现在我创建表=>
invisible indexes
首先获取索引名称(我没有创建索引),然后在create table emin1 ( id number primary key, nomre number );
insert into emin1 values(1,1);
insert into emin1 values(2,1);
=>中使用了分析>>
normal index
我不知道
SQL> select index_name,table_name from user_indexes a where table_name = 'EMIN3'; INDEX_NAME TABLE_NAME --------------- --------------- SYS_C008422 EMIN3 analyze index SYS_C008422 validate structure; SQL> select name, lf_rows,distinct_keys from index_stats; NAME LF_ROWS DISTINCT_KEYS --------------- ---------- ------------- SYS_C008422 2 2
中的大多数列,而是选择index_stats
列(我只知道::))),在静力学之后,我再次插入2行并再次进行分析=>
DISTINCT_KEYS
因此,在插入操作之后,我们看到index_stats中的值发生了变化(这意味着保持不变),在
insert into emin1 values(3,1); insert into emin1 values(4,1); analyze index SYS_C008422 validate structure; SQL> select name, lf_rows,distinct_keys from index_stats; NAME LF_ROWS DISTINCT_KEYS --------------- ---------- ------------- SYS_C008422 4 4
之后,我将其强制设置为normal index
=>
invisible index
插入一些行=>
SQL> alter index SYS_C008422 invisible; Index altered.
所以它又被改变了,我不知道我是否正确,但是我想了解专家的意见,因为在google上搜索了更多有关此问题的信息,但是我找不到明确的答案,因此我模拟了一下以查看DML操作中发生了什么,我找到了这种方法,我认为这将对更多的初学者有所帮助。
因此,我决定进行模拟并查看发生了什么(我正在学习oracle大约7个月,可能会出错),我知道在正常索引中维护了DML操作(在DML时更新了索引...