首先创建java source
create or replace and compile java source named execsyscmd as
import java.io.*;
public class ExecSysCmd
{
public static String exec_cmd(String args) {
Runtime run = Runtime.getRuntime();
Process process = null;
try {
process = run.exec(args);
return "OK";
} catch (Exception e) {
return e.getMessage();
}
}
public static void main(String[] args)
{
System.out.println("No command line arguments");
}
}
/
其后创建函数调用该java soure
create or replace function exec_cmd(cmd string) return varchar2 is
language java name 'ExecSysCmd.exec_cmd(java.lang.String) return java.lang.String';
/
可以通过SQL查询来调用
select exec_cmd('d:\1.bat') from dual;
EXEC_CMD('D:\1.BAT')
-------------------------------------------------------------------
OK
也可以在PL/SQL代码中调用
set serveroutput on
declare
my_result varchar2(20);
begin
select exec_cmd('d:\1.bat') into my_result from dual;
end;
/
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28974745/viewspace-2141346/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/28974745/viewspace-2141346/