0

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

4

1 回答 1

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

于 2013-09-26T08:20:38.907 回答