5 then     dbms_output.put_line"/>

文章详情

短信预约信息系统项目管理师 报名、考试、查分时间动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

存储过程和函数 oracle

2021-01-19 08:40

关注

存储过程和函数 oracle


declare
begin
  dbms_output.put_line("Hello World");

end;

declare
  i number := 10;
begin
  if i > 5 then
    dbms_output.put_line("OK");
  end if;

end;

--loop循环

declare
  i number := 1;
begin
  loop
    dbms_output.put_line("OK");
  
    exit when i=10;
      i:=i+1;
  end loop;

end;


--while 循环
declare 
   i number :=1;
begin
   while i<10 loop
     dbms_output.put_line("我说了算");
     i:=i+1;
     end loop;
end;

-- 1-100之间所有的偶数

declare
  i number := 1;
begin
  while i <= 100 loop
    if mod(i, 2) = 0 then
      dbms_output.put_line(i);
    end if;
    i := i + 1;
  end loop;
end;


--智能循环 for循环 

declare
begin
  for i in 1 .. 10 loop
    dbms_output.put_line(i);
  end loop;

end;

declare
   x number:=1;
  y number:=1;
  begin
    while x<=10 loop
      dbms_output.put_line("----->"||x);
      y:=1;
      while y<=5 loop
        if x=7 and y=3 then
          exit;
          end if;
        dbms_output.put_line(y);
        y:=y+1;
        end loop;
        x :=x+1; 
      end loop;
end;

--存储过程定义的

create procedure getMax(x number,y number)
is

  begin
   if x>y then
     dbms_output.put_line("X:"||x);
     else
          dbms_output.put_line("Y:"||y); 
          end if;
end;

--调用存储过程
在PL/SQL中的SQL window中可以执行的
call getMax(2,5);
begin
  getMax(7,3);
end;
在PL/SQL中的SQL window中不可以执行的
execute getMax(4,7)
exec getMax(8,5);


create or replace procedure getMax(x number :=1,y number:=2)
is

  begin
   if x>y then
     dbms_output.put_line("X:"||x);
     else
          dbms_output.put_line("Y:"||y); 
          end if;
end;

call getMax();

--存储过程的参数

--编写一个存储过程,比较第一个参数和第二个参数,将最大的值存储在第三个参数中


create or replace procedure getMax(x number,y number,z out number)
is

  begin
   if x>y then
    z:=x;
     else
      z:=y;
          end if;
end;

declare 
          da number;
begin
  getMax(110,3,da);
       dbms_output.put_line(da);
end;


--存储过程类似java中的方法,但不是,因为没有返回值,
--函数就是java中的方法,具有返回值的。 两者的区别就是有无返回值


create or replace function getCountMax(x in out,y in out number) return number
is
begin 
  if x>y then
    dbms_output.put_line(x);
    y:=x+y;
    return x;
  else
    dbms_output.put_line(y);
    y:=x+y;
    return y-x;
    end if;
end;

select getCountMax(5,7) from dual;


 

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯