从Java

时间:2018-06-12 11:51:45

标签: java sql oracle jdbc

我们可以使用JDBC从java获取在Oracle SQL中声明的存储过程内容吗?

背景:我有一个存储过程,其中包含insert。当我添加用于将每个记录插入executeBatch()的存储过程时,executeBatch()的性能与添加单个insert语句时的性能不同。

此外,我不想在代码中进行更改,也不想尝试其他选项,例如在代码中使用inserts并将记录作为列表传递给数组。因此,在这种情况下,最可取的选择是找到一种在SQL存储过程中提取代码的方法。

1 个答案:

答案 0 :(得分:2)

您可以从ALL_SOURCE视图获取过程的源代码:

SELECT *
  FROM ALL_SOURCE s
  WHERE s.OWNER = 'WHATEVER' AND
        s.NAME = 'WHATEVER'
  ORDER BY s.LINE;

祝你好运。