日期:2014-05-16  浏览次数:20957 次

drop表的索引会导致过程失效么?
问题:drop表的索引然后重新建立索引会导致过程失效么?如果会的话为什么?
我在2个数据库进行测试的结果不一致。
在数据库1 drop表A的索引过程没有失效
在数据库2 同样drop表A索引调用该表的过程全部失效,不知道是为什么?
备注:数据库1和数据库2是主机和备机 数据完全一致过程、表完全一致。
求高人解答。。。。

------解决方案--------------------
你drop之前这索引可能丢了,执行的时候报错,就失效了


你可以下建立这索引,重新确认你的存储过程
------解决方案--------------------
是不是过程里使用hints引用该索引了?
------解决方案--------------------
数据库版本一样么?
我在10g下试了下,删除索引好像不会导致存储过程失效。
------解决方案--------------------
探讨
问题:drop表的索引然后重新建立索引会导致过程失效么?如果会的话为什么?
我在2个数据库进行测试的结果不一致。
在数据库1 drop表A的索引过程没有失效
在数据库2 同样drop表A索引调用该表的过程全部失效,不知道是为什么?
备注:数据库1和数据库2是主机和备机 数据完全一致过程、表完全一致。
求高人解答。。。。

------解决方案--------------------
重新编译一下呢?是否能编译通过?
------解决方案--------------------
这个问题的出现似乎很诡异,常理来说,如果存储过程没有显示引用索引的地方,删除索引是不会导致存储过程失效的。