首页 » Oracle » 正文

Oracle如何通过JDBC看到执行计划

常用于调试线上的bug,jdbc连接可重现,数据库连接不可重现的问题。

1
2
3
4
5
6
7
8
oracle = ConnectionManager.getConnection(ConnectionManager.Test);
stmt = oracle.createStatement()
stmt.execute("explain plan for SELECT   1 from Dual");
rs = stmt.executeQuery("select plan_table_output from table(dbms_xplan.display())");
while (rs.next())
{
  System.out.println(rs.getString(1));
}