【问题标题】:How to read Stored Procedure source code from a java program? [duplicate]如何从 java 程序中读取存储过程源代码? [复制]
【发布时间】:2017-03-31 12:09:39
【问题描述】:

我需要从 Java 程序中读取特定模式的存储过程的内容(存储过程中的文本)。

示例。假设我在 oracle 中有一个名为 mySp 的 sp。

我需要阅读 sp 里面的文字。

我如何通过 java 程序实现这一点。

【问题讨论】:

    标签: java oracle11g io


    【解决方案1】:

    我认为您可以使用类似的东西..最好参考 JDBC MetaData API..希望这会有所帮助

    http://docs.oracle.com/javase/7/docs/api/java/sql/DatabaseMetaData.html

    DatabaseMetaData dbMetaData = conn.getMetaData();
    ResultSet rs = dbMetaData.getProcedureColumns(conn.getCatalog(),
                          null,
                          "mySp",
                          "");
    
    while(rs.next()) {
      /
    }
    

    【讨论】:

    • 我认为上面将只返回存储过程列名。对吗?
    • 例如,我给出了 getProcedureCOlumns.. 还有其他方法.. 只需验证上面的链接.. 否则您可以使用更多查询并将此 SP 作为参数传递并获取文本。 .that option is also available..我在google中找到了以下内容.. SELECT a.OBJECT_NAME,p.PROCEDURE_NAME FROM SYS.ALL_OBJECTS a, SYS.ALL_PROCEDURES p WHERE a.OBJECT_NAME = p.OBJECT_NAME AND a.OBJECT_TYPE = 'PACKAGE' AND a.OWNER = '" + ownerName + "' AND p.PROCEDURE_NAME 不为 NULL"
    猜你喜欢
    • 2018-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-07
    • 1970-01-01
    相关资源
    最近更新 更多