PRO C中呼叫儲存過程和函式

2021-09-01 09:41:25 字數 975 閱讀 1615

在pro*c中可以在乙個嵌入式pl/sql塊中呼叫乙個儲存過程或函式。以下通過例子來說明呼叫的方法。比如說目前有以下幾個儲存過程和函式:

lprocedure1() :沒有引數的儲存過程 l

procedure2 (param1 number, param2 varchar2):有2個引數的儲存過程 l

function1() return number  :沒有引數的函式 l

function2(param1 number) return number:有乙個引數的函式

呼叫procedure1的嵌入式pl/sql語法為:

exec sql execute 

begin 

procedure1; 

end; 

end-exec; 

呼叫procedure2的嵌入式pl/sql語法為:

int hostvar1;

char hostvar2(20);

exec sql execute 

begin 

/* hostvar1和hostvar2是兩個在c語言中定義的宿主變數*/ 

procedure2(:hostvar1, :hostvar2);  

end; 

end-exec; 

呼叫function1的語法是:

int hostvar; 

exec sql execute 

begin 

:hostvar:= function1; 

end; 

end-exec; 

呼叫function2的語法:

int hostvar,returnvar; 

exec sql execute 

begin 

:returnvar := function2(:hostvar); 

end; 

end-exec;

pro c之呼叫Oracle儲存過程

1 將 pc檔案編譯為 cpp檔案的過程以及程式的配置過程參考文章 2 唯一的區別在於,為編譯命令增加兩個 編譯預選項 1 設定sqlcheck semantics 或 sqlcheck full。2 設定userid username password db name。proc sqlcheck ...

ADF中呼叫PLSQL儲存過程和函式

下面是從 adf guide 中總結的一段呼叫 plsql 儲存過程和函式的方法,僅供參考。1,呼叫沒有引數的儲存過程 可以使用 executecommand 函式,在 am 的實現類中可以這樣來使用 getdbtransaction executecommand begin devguidepkg...

OTL呼叫儲存過程和函式

otl簡單介紹 oracle 儲存函式 func test create or replace function func test a in integer,b in out integer,c out integer return integer isd integer begin c 10 b...