PRO*C中调用存储过程和函数

PRO*C中可以在一个嵌入式PL/SQL块中调用一个存储过程或函数。以下通过例子来说明调用的方法。比如说目前有以下几个存储过程和函数:

 

l        procedure1() :没有参数的存储过程

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 

/* hostvar1hostvar2是两个在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;

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值