Oracle External Procedures


Externally created procedures such as those written in C and stored in DLLs (dynamic link libraries) can be called from within Oracle. In order to be able to access these external procedures LIBRARY's must be created. These libraries are like BFILE objects. LIBRARY objects are pointers to files stored outside of the database. In general, LIBRARYs contain pointers to external DLLs which can then be called from within the Oracle database.

CREATE LIBRARY libraryAlias AS libraryPath;

External DLL contained procedures can be called from PL/SQL procedures. WHen a request is made the listener process extproc starts a separate Net8 process. Calls sent through extproc starts a second separate process to handle the user call. The second process secures the user process from things like memory corruption. The extproc process can also pass variables between two processes. Note that the Net8 listener agent extproc must be started on the Oracle server host.