Oracle存储过程执行慢


存储过程功能是循环对list遍历,对表进行插入操作,插入异常则进行修改操作。

可能为update语句执行慢,可是表里有主键,update时主键为条件,走主键应该不会慢。

单独把update语句拿出执行,不慢。

最终找出原因,list中对象用的为nvarchar而表里主键为varchar2,执行语句时Oracle会进行隐式转换,转换会导致索引无效,会导致update语句执行慢。

解决方法将手动进行转换把list遍历出来的值to_char。存储过程速度恢复秒级。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM