gpt4 book ai didi

java - 如何通过 Eclipse 链接查找查询的解释计划

转载 作者:行者123 更新时间:2023-11-30 11:24:22 26 4
gpt4 key购买 nike

我有一个以 JPA 和 eclipse 链接 作为后端的 Java 应用程序。我想找到在应用程序运行时执行的特定查询的 explain plan 。我知道我可以通过 sql developer 检查它,但我想在应用程序调用时找到查询的解释计划。有办法吗?

我尝试添加 explain plan for select 1 from dual 但它一直抛出异常。

最佳答案

您没有太多选择。由于某些未知原因,hibernate 和 enclipselink 都不支持类似的东西,请参阅 setting-context-in-a-jpa

所以你必须使用纯 Oracle 解决方案

  • 创建 LOGON TRIGGER ON SCHEMA 并在其中启用 session 跟踪。然后运行应用程序并分析跟踪文件
  • 检查 v$SQL_PLAN View 的内容并检查查询的实际执行计划。

如果您坚持从 Eclipse 链接执行此操作,那么您必须以某种方式启动事务,以避免将 session 返回到池中。查询 v$mystatv$session 以获取 SIDSERIAL#(以获取唯一 session 标识符)。然后执行您的查询。并从 v$session 获取 SQL_IDPREV_SQL_ID。检查 v$sql_planv$sql_text 以获取查询 sql 文本和执行计划。

关于java - 如何通过 Eclipse 链接查找查询的解释计划,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20697043/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com