参数绑定导致java执行查询sql效率低
今天在做一个分页查询的时候,发现一个sql在java端执行超级慢,原sql的格式大概如下:
</pre><pre name="code" class="sql">select a.a1,a.a2 from a where a.id in (select to_number('123') union all (select b.id from b ))
发现在数据库中执行计划非常好,但是在java中执行可能需要两三分钟。
通过网上查看发现,具体原因是在java中使用了参数绑定 ? 和to_number数值类型转换导致oracle索引失效。
所以在java中取消了参数绑定,而使用拼接字符串的方式解决。
欢迎转载,但转载请注明原文链接[博客园: http://www.cnblogs.com/jingLongJun/]
[CSDN博客:http://blog.csdn.net/mergades]。
如相关博文涉及到版权问题,请联系本人。
[CSDN博客:http://blog.csdn.net/mergades]。
如相关博文涉及到版权问题,请联系本人。