https://blog.csdn.net/funnyfu0101/article/details/52961485
所有执行的结果是脚本命令集合,可以用来创建索引;
a)在plsql中使用execute immediate 'alter table J3_nsrxx NOLOGGING';
b)sql窗口中,复制出来可直接执行;
1)查询指定表的索引
-
--执行过程中,能输入变量:Owner、Table_Name
-
SELECT T1.TABLE_NAME,
-
T1.INDEX_NAME,
-
T1.INDEX_TYPE,
-
T1.UNIQUENESS,
-
T1.TABLE_OWNER,
-
T1.STATUS,
-
T1.FUNCIDX_STATUS
-
FROM ALL_INDEXES T1
-
WHERE T1.TABLE_OWNER = UPPER('&Owner')
-
AND T1.TABLE_NAME = UPPER('&Table_Name')
-
ORDER BY T1.STATUS DESC;
2)普通索引失效,主键和唯一性索引除外(为保障数据的规范性)
-
--普通索引失效,主键和唯一性索引除外(为保障数据的规范性)
-
--执行过程中,能输入变量:Owner、Table_Name
-
SELECT 'ALTER INDEX ' || TABLE_OWNER || '.' || INDEX_NAME || ' UNUSABLE;' UNUSABLE_INDEX
-
FROM ALL_INDEXES
-
WHERE TABLE_OWNER = UPPER('&Owner')
-
AND TABLE_NAME = UPPER('&Table_Name')
-
AND INDEX_TYPE = 'NORMAL'
-
AND UNIQUENESS <> 'UNIQUE';
3)并行(PARALLEL)重建索引,提升重建速度(在服务器空闲时执行)
-
--并行(PARALLEL)重建索引,提升重建速度(在服务器空闲时执行)
-
--执行过程中,能输入变量:Owner、Table_Name
-
SELECT 'ALTER INDEX ' || TABLE_OWNER || '.' || INDEX_NAME ||
-
' REBUILD PARALLEL;' REBUILD_index
-
FROM ALL_INDEXES
-
WHERE TABLE_OWNER = UPPER('&Owner')
-
AND TABLE_NAME = UPPER('&Table_Name')
-
AND INDEX_TYPE = 'NORMAL'
-
AND UNIQUENESS <> 'UNIQUE'
-
AND STATUS = 'UNUSABLE';