zoukankan      html  css  js  c++  java
  • plsql 储存过程 参数的传递方式?

    /*
     存储过程
      一.oracel存储过程
        1、没有返回值 return 值;
        2、用输出参数来代替返回值;
        3、输出参数可以有多个
      
      二.参数的传递方式
       1. 按位置传递
       2. 按名字传递
       3.混合传递  --按照位置传递,再按照名字传递
    
    */
    
      select * from emp;
      call re4(3,4);
      
      
    create or replace procedure re6 (
      id1 in number,
      id2 in number,
      name1  in emp.ename%type,
      name2  in emp.ename%type,
      n1 out number  -- 需要返回一个参数么? 
    )
    as
    begin
      insert into emp (empno,ename,sal) values (id1,name1,5000);
      insert into emp (empno,ename,sal) values (id2,name2,5000);
      commit;
      select count(*) into n1 from emp;
    end;
    
    declare 
     v_count number(2);-- oracle 没有返回值  用输出参数来定义。
    begin
     re6(1,2,'haha','xixi',v_count);
     dbms_output.put_line('总记录数'||v_count);
    end;
    
    -- 1. 按位置传递
    declare
      v_count number(2);
    begin 
      re6(3,4,'jiji','baba',v_count);  -- 1. 按位置传递
      dbms_output.put_line(v_count);
    end;
    
    
    -- 2.名字传递参数  无序
    declare
       v_count number(2);
    begin                               -- 2.名字传递参数  无序
        re6(name1=>'张三',name2=>'李四',id1=>8,id2=>9, n1=>v_count);
       dbms_output.put_line(v_count);
    end;
    select *from emp;
    call re4(1,2);
    call re4(3,4);
    
    
    -- 混合传递
    declare
      v_count number(2);
    begin
      re6(1,2,name1=>'狼王',name2=>'兔子',n1=>v_count);  --按照位置传递,再按照名字传递
      dbms_output.put_line('总数量:'||v_count);
    end;
    
    
    select * from emp;
  • 相关阅读:
    CSS高级应用参考手册
    通过ClassLoader说明容器热部署实现机制
    自定义类加载器
    zz Ubuntu常用命令大全
    设计模式之Decorator(油漆工)
    zz JNI学习(一)、JNI简介和HelloWorld示例
    类加载器的基本概念
    使用 StAX 解析 XML,第 1 部分: Streaming API for XML (StAX) 简介
    ubuntu apache mod_expires模块
    清空ubuntu 日志
  • 原文地址:https://www.cnblogs.com/ZXF6/p/11228377.html
Copyright © 2011-2022 走看看