我在oracle中有一个索引说“TEMP_INDEX”,我想在其上添加一条评论,如“OBSOLETE”,这样我就可以忽略这个索引进行进一步处理。
我们可以这样做吗?还是有其他方法可以做到这一点。
这里的目标是,我只想以某种方式标记索引,以便不考虑进一步处理。这里的约束是,我无法删除该索引。
答案 0 :(得分:2)
您可以通过
简单地禁用索引alter index TEMP_INDEX invisible
或者如您所述,您不希望系统将该索引视为进一步处理,您可以在查询中使用NO INDEX hint
引自ORACLE GUIDE - >
SELECT /*+ NO_INDEX(employees emp_empidx) */ employee_id
FROM employees
WHERE employee_id > 200;
答案 1 :(得分:0)
如果您不想使用索引,可以从Oracle 11G开始制作Index
Invisible
。
语法 - ALTER INDEX index_name INVISIBLE;
因此,使用WHERE子句中的索引列的查询会忽略索引并执行全表扫描。