通过 java 执行 SQL 时运行缓慢
我正在尝试在 oracle 数据库中执行查询。 当我尝试通过 SQLTools 运行时,查询将在 2 秒内执行 当我通过 JAVA 运行相同的查询时,它会在一分多钟内执行。
我正在使用提示 /*+ordered use_nl (a, b)*/
我正在使用 ojdbc6.jar 是因为任何 JARS 吗? 请帮忙看看这是什么原因造成的?
I am trying to execute a query in oracle db.
When i try to run thru SQLTools the query is executing in 2 seconds
and when i run the same query thru JAVA it is exectuting in more than a minute.
I am using a hint /*+ordered use_nl (a, b)*/
I am using ojdbc6.jar Is it because of any JARS?
Please help whats causing this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
对于Oracle 9i或更高版本,数据库引擎可以自动调整SQL,少数情况需要指定提示。
如何在Java中运行查询,重复循环运行?使用参数?执行前准备?
For Oracle 9i or later, database engine can tune SQL automatically, few case need to specify hints.
How do you run query in Java, repeat to run in loop? use parameter? prepare before execute?
您需要分析您的 Java 应用程序,以确定 SQL 执行之前或之后 Java 代码中的哪些位置消耗了开销时间。
您可以使用的一些分析工具包括:YourKit、JProfiler 和 HPROF (这是一个命令行工具)。
You need to profile your Java application to identify where in the Java code before or after the SQL execution that overhead time is being spent.
Some profiling tools that you can use for that are: YourKit, JProfiler and HPROF (this one is a command line tool).