java - 使用 PL/SQL 执行 perl 脚本

标签 java oracle perl plsql oracle-apex

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

最佳答案

您可以从 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

关于java - 使用 PL/SQL 执行 perl 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19019319/

相关文章:

java - 将精确距离添加到 GPS 坐标

java - 在 ODFToolkit 中将内容添加到 OpenOffice odp 演示文稿的框架

java - 打开新消息框或其他对话框时如何使背景屏幕变暗

java.sql.SQLException : Access denied for user 'root' @'remotehost' (using password: YES) 异常

oracle - PL/SQL XML 解析为关系表

sql - 从查询返回列名的表中选择特定列的数据

sql - 如何在Oracle中获取 "Open"XML数据

html - XPath 收集多个属性(html 事件)

php - 取消 HTTP POST 请求服务器端

java - linux 上哪种语言(python/perl/tcl)不需要安装第三方库?