如何直接从PL / SQL调用PRO * C程序?

时间:2015-05-20 13:43:53

标签: sql c oracle oracle-pro-c

我在这里找不到类似的问题。

我有一个名为pro_c.pc的PRO * C程序。如何在一段PL / SQL代码中调用和执行它?!有人能给我一个简单的例子吗?!

1 个答案:

答案 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数据库服务器上运行。