[ADMIN]A misunderstanding
I used to consider that an unusable index may cause DML changes fail. In fact, only the index related to a constraint may lead to such situation.
SQL> create table move_test(cola number);
表已建立。
SQL> begin
2 for i in 1..10 loop
3 insert into move_test values(i);
4 end loop;
5 commit;
6 end;
7 /
PL/SQL 過程已成功完成。
SQL> select * rom move_test;
select * rom move_test
*
第 1 行出現錯誤:
ORA-00923: 未找到要求的 FROM 關鍵字
SQL> select * from move_test;
COLA
----------
1
2
3
4
5
6
7
8
9
10
已選擇10行。
SQL> create index idx1_move_test on move_test(cola);
索引已建立。
SQL> insert into move_test values(11);
已建立 1 行。
SQL> commit;
提交完成。
SQL> alter table move_test move;
表已更改。
SQL> select status from user_indexes where index_name='IDX1_MOVE_TEST';
STATUS
--------
UNUSABLE
SQL> insert into move_test values(12);
已建立 1 行。
SQL> commit;
提交完成。
SQL> select status from user_indexes where index_name='IDX1_MOVE_TEST';
STATUS
--------
UNUSABLE
SQL> alter index idx1_move_test rebuild;
索引已更改。
SQL> alter table move_test add primary key(cola);
表已更改。
SQL> select index_name from user_indexes where table_name='MOVE_TEST';
INDEX_NAME
------------------------------
IDX1_MOVE_TEST
SQL> alter table move_test move;
表已更改。
SQL> select status from user_indexes where index_name='IDX1_MOVE_TEST';
STATUS
--------
UNUSABLE
SQL> insert into move_test values(13);
insert into move_test values(13)
*
第 1 行出現錯誤:
ORA-01502: 索引 'YCHEN.IDX1_MOVE_TEST' 或這類索引的分割槽處於不可用狀態
SQL> alter index idx1_move_test rebuild;
索引已更改。
SQL> insert into move_test values(13);
已建立 1 行。
SQL> commit;
提交完成。
[@more@]A來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8558093/viewspace-1020495/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Dcat Admin 教程 - 如何從 Laravel admin 遷移到 dcat admin?Laravel
- Easy-Admin
- Laravel-adminLaravel
- Django admin元件Django元件
- ZR.Admin
- laravel-admin,Dcat-admin與maatwebsite/excel上傳LaravelWebExcel
- 如何從 vue-element-admin 遷移到 Fantastic-adminVueAST
- django-admin 和django-admin.py的區別Django
- Laravel-admin 用法Laravel
- SpringBoot AdminSpring Boot
- 使用Admin監控
- dubbo-admin搭建
- pLog Admin(轉)
- grant with admin/grant option
- vue-element-admin 入坑記(一)vue-element-admin 中文Vue
- laravel-admin 按模組拆分後臺業務元件 laravel-admin-modulesLaravel元件
- laravel-admin常用操作Laravel
- Nginx laravel-admin 配置NginxLaravel
- laravel-admin 之 formLaravelORM
- Dcat Admin 安裝教程
- iview admin 使用爬坑View
- Larave-admin 安裝
- Spring Boot Admin 使用Spring Boot
- 接觸el-admin
- laravel_admin筆記Laravel筆記
- 數倉+admin拼團
- Dcat Admin 擴充徵集
- Dcat-Admin筆記筆記
- Laravel-admin 整合 simditorLaravel
- Laravel admin 中如何列印 sqlLaravelSQL
- Salesforce Admin篇(二) ReportSalesforce
- Laravel-admin 配置子域名Laravel
- vue-element-admin 登陸Vue
- laravel-admin學習(一)Laravel
- Laravel-admin 使用記錄Laravel
- laravel-admin 更換底部Laravel
- 實戰SpringBoot AdminSpring Boot
- 加入Dcat Admin使用大軍