参数绑定导致java执行查询sql效率低
2014-08-25 20:27
246 查看
今天在做一个分页查询的时候,发现一个sql在java端执行超级慢,原sql的格式大概如下:
发现在数据库中执行计划非常好,但是在java中执行可能需要两三分钟。
通过网上查看发现,具体原因是在java中使用了参数绑定 ? 和to_number数值类型转换导致oracle索引失效。
所以在java中取消了参数绑定,而使用拼接字符串的方式解决。
</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中取消了参数绑定,而使用拼接字符串的方式解决。
相关文章推荐
- PLSQL_查询已执行SQL的绑定参数(案例)
- PLSQL_查询已执行SQL的绑定参数(案例)
- 应用程序对Sqlserver进行SQL查询使用与不使用参数对执行计划的影响
- 动态SQL的执行,注:exec sp_executesql 其实可以实现参数查询和输出参数的
- 2014.07.10 性能优化:java循环处理效率高于Sql执行效率
- Hibernate(二)HQL&SQL参数绑定、投影和分页以及命名查询
- java 执行sql错误 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 1 (""): 数据类型 0x38 未知
- mysql 的优化(如何查询mysql中执行效率低的sql语句)
- 构造绑定含有绑定变量的JAVA的SQL语句执行计划
- Oracle数据库案例整理-执行Oracle脚本失败或异常-SQL命令中字符串参数使用双引号导致更新数据库表信息失败
- 多线程执行 sql查询 提升整体查询效率
- 在一个千万级的数据库查寻中,如何提高查询效率?分别说出在数据库设计、SQL语句、java等层面的解决方案。
- 查询mysql中执行效率低的sql语句的方法
- 在一个千万级的数据库查寻中,如何提高查询效率?分别说出在数据库设计、SQL语句、java等层面的解决方案
- java中使用sql的存储过程,提高查询效率
- 在一个千万级的数据库查寻中,如何提高查询效率?分别说出在数据库设计、SQL语句、java等层面的解决方案。
- 在一个千万级的数据库查寻中,如何提高查询效率?分别说出在数据库设计、SQL语句、java等层面的解决方案。【转】
- jsp页面获取参数 执行sql查询数据库
- 【SQL】子查询中有rownum,导致全表扫描,效率极
- android之Android中的SQL查询语句LIKE绑定参数问题解决办法(sqlite数据库)