签到成功

知道了

CNDBA社区CNDBA社区

Oracle存储过程创建和调用

2022-02-14 14:25 1080 0 原创 oracle
作者: hbhe0316

1.创建测试存储过程SQLhttp://www.cndba.cn/hbhe0316/article/106662

[oracle@node01:/home/oracle]$ cat proc_test.sql
/*****
** 创建加、减、乘、除计算的存储过程
**输入参数: 数字1,数字2,计算类型
**输出参数: 数字3
*****/
create or replace procedure Proc_Test
(
--定义输入、输出参数--
num_A in integer,
num_B in integer,
numType in integer,
num_C out integer
)
as
--定义变量--
 -- numCount integer;
 -- numStr varchar(20);
begin
     --判断计算类型--
     if numType=1 then
        num_C := num_A + num_B;
     elsif numType=2 then
        num_C := num_A - num_B;
     elsif numType=3 then
        num_C := num_A * num_B;
     elsif numType=4 then
        num_C := num_A / num_B;
     else
     --其它处理
       dbms_output.put_line('其它处理');
     end if;
end;

2.创建存储过程http://www.cndba.cn/hbhe0316/article/106662

http://www.cndba.cn/hbhe0316/article/106662
http://www.cndba.cn/hbhe0316/article/106662

sys@testDB 14:19:36> @ /home/oracle/proc_test.sql
 28  /

Procedure created.

3.调用存储过程http://www.cndba.cn/hbhe0316/article/106662http://www.cndba.cn/hbhe0316/article/106662

declare num_C integer;
begin
   --调用存储过程---
   Proc_Test(3,4,3,num_C);
   dbms_output.put_line('输出结果:'|| num_C );
end;

4.执行效果

http://www.cndba.cn/hbhe0316/article/106662
http://www.cndba.cn/hbhe0316/article/106662
http://www.cndba.cn/hbhe0316/article/106662
http://www.cndba.cn/hbhe0316/article/106662

输出结果:12

版权声明:本文为博主原创文章,未经博主允许不得转载。

oracle

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
hbhe0316

hbhe0316

关注

1.只有承认无知,才能装下新的东西; 2.进步来自一点点滴滴的积累; 3.广博让你更优秀,而专业让你无法替代; 4.挫折和失败能够转换为一种财富。

  • 889
    原创
  • 1
    翻译
  • 13
    转载
  • 24
    评论
  • 访问:1038778次
  • 积分:1523
  • 等级:核心会员
  • 排名:第6名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ