使用PL / SQL执行perl脚本

时间:2013-09-26 04:19:59

标签: java oracle perl plsql oracle-apex

我想通过单击应用程序中的按钮(Oracle Apex)来执行perl脚本。我可以将脚本放在应用程序与之交互的数据库主机中。在顶点我可以执行PL / SQL代码。有没有办法使用PL / SQL执行perl脚本?

1 个答案:

答案 0 :(得分:1)

您可以从PL / SQL调用Java。使用Java,您可以从命令行执行任何操作。

随机示例:

import java.sql.*;
import oracle.jdbc.driver.*;

public class Adjuster {
  public static void raiseSalary (int empNo, float percent)
  throws SQLException { 
    Connection conn = new OracleDriver().defaultConnection();
    String sql = "UPDATE emp SET sal = sal * ? WHERE empno = ?";
    try {
      PreparedStatement pstmt = conn.prepareStatement(sql);
      pstmt.setFloat(1, (1 + percent / 100));
      pstmt.setInt(2, empNo);
      pstmt.executeUpdate();
      pstmt.close();
    } catch (SQLException e) {System.err.println(e.getMessage());}
  }
}

CREATE OR REPLACE PROCEDURE raise_salary (empno NUMBER, pct NUMBER)
AS LANGUAGE JAVA
NAME 'Adjuster.raiseSalary(int, float)';

手册: http://docs.oracle.com/cd/B28359_01/java.111/b31225/chfive.htm