1、Oracle 删除索引删除索引是使用 DROP INDEX 语句完成的。一般情况下,删除索引是由索引所有者完成的,如果以其他用户身份删除索引,则要求该用户必须具有 DROP ANY INDEX 系统权限或在相应表上的 INDEX 对象权限。通常在如下情况下需要删除某个索引: 该索引不再需要时,应该删除该索引,以释放其所占用的空间。 如果移动了表中的数据,导致索引中包含过多的存储碎片,此时需要删除并重建索引。 通过一段时间的监视,发现很少有查询会使用到该索引。索引被删除后,它所占用的所有盘区都将返回给包含它的表空间,并可以被表空间中其他对象使用。索引的删除方式与索引创建采用的方式有关,如果使用
2、CREATE INDEX语句显式地创建该索引,则可以用 DROP INDEX 语句删除该索引。例如:SQL drop index emp_job_bmp;索引已删除。如果索引是定义约束时由 Oracle 自动建立,则必须禁用或删除该约束本身。另外,在删除一个表时,Oracle 也会删除所有与该表相关的索引。关于索引最后需要注意一点,虽然一个表可以拥用任意数目的索引,但是表中的索引数目越多,维护索引所需的开销也就越大。每当向表中插入、删除和更新一条记录时,Oracle 都必须对该表的所有索引进行更新。因此,用户还需要在表的查询速度和更新速度之间找到一个合适的平衡点。也就是说,应该根据表的实际情况,限制在表中创建的索引数量。