Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Calling C functions from PL/SQL

maldrich12Apr 2 2021

Hi,
I am trying to call functions from a compiled C program from PL/SQL. I created the library like this after placing the compiled C program in $ORACLE_HOME/bin:

create or replace library startoo_lib
  as '/apps/oracle/product/19.3/dbhome_1/bin/ooffice.so';

I am now trying to call one of the functions in that program, like this:

create or replace FUNCTION oo_startup(oohost in varchar2, ooport in number)
return BOOLEAN
as external
library startoo_lib
name "test_startoo"
language c
parameters (oohost string, ooport string);

I receive the error:

LINE/COL ERROR
--------- -------------------------------------------------------------
0/0    PL/SQL: Compilation unit analysis terminated
7/28   PLS-00235: the external type is not appropriate for the parameter
Errors: check compiler log

When I try to compile. I don't see a lot of documentation on this subject, so any hints would be appreciated.

Comments
Post Details
Added on Apr 2 2021
1 comment
1,107 views