我有一个批处理文件,它将执行一些 .exe 执行一些操作(如连接到数据库、获取数据、插入数据等......)
所有的东西都在批处理文件中配置,当我运行它时,它运行良好。
但是,我想从PL/SQL 过程中调用这个批处理文件。
这个过程应该先调用这个批处理文件,在批处理文件执行之后,它会有自己的SQL操作。
我该如何继续执行此操作?
我有一个批处理文件,它将执行一些 .exe 执行一些操作(如连接到数据库、获取数据、插入数据等......)
所有的东西都在批处理文件中配置,当我运行它时,它运行良好。
但是,我想从PL/SQL 过程中调用这个批处理文件。
这个过程应该先调用这个批处理文件,在批处理文件执行之后,它会有自己的SQL操作。
我该如何继续执行此操作?
使用 dbms_scheduler 设置作业。此处讨论此主题(德语): http ://db-memory.blogspot.ch/2012/12/dbmsscheduler-mit-executable-unter.html 屏幕截图可能会有所帮助。
请记住启用 dbms_scheduler 作业,否则它将无法运行。
您可以使用实现运行操作系统可执行文件的方法编写自己的存储 java 类。您应该使用 DBMS_JAVA.GRANT_PERMISSION 过程授予您的 oracle 用户 java.io.FilePermission 和 java.lang.RuntimePermission。然后你应该创建一个调用你的java方法的plsql函数包装器。运行 OS eecutable 你应该做的就是运行你的 plsql 包装函数。
这里有一个关于它的“AskTom”页面