我在这里找不到类似的问题。
我有一个名为pro_c.pc
的PRO * C程序。如何在一段PL / SQL代码中调用和执行它?!有人能给我一个简单的例子吗?!
答案 0 :(得分:1)
您可以将外部库(Windows DLL或UNIX“.so”文件)链接到Oracle,然后通过PLSQL使它们可调用。至少从Oracle 8i开始,这已经存在。
这虽然要求服务器上的DBA privs设置它,但这些天可能不是推荐的方法....但是对于处理大量数据很有用。
有关详细信息,请参阅here。
直接调用实际程序,而不是来自PLSQL的库函数,将通过DBMS_SCHEDULER间接完成,因为@Justin建议这是最简单的方法,创建一个PROGRAM_TYPE为EXECUTABLE的程序。有关详细信息,请参阅here。
在执行此操作时需要注意的几件事情,程序将作为(假设UNIX)“oracle”用户运行 - 带来一些安全性考虑因素,例如:如果程序创建一个文件,它将被创建为oracle拥有,因此“应用程序”用户可能无法访问。该程序将在Oracle数据库服务器上运行。