zoukankan      html  css  js  c++  java
  • oracle函数调用存储过程

    1、无参数存储过程的调用

    --创建无参存储过程
    CREATE OR REPLACE FUNCTION stu_proc RETURN VARCHAR2 IS
    --声明语句段
    v_name varchar2(20);
    BEGIN
    --执行语句段
    SELECT o.sname INTO v_name FROM student o where o.id=1;
    RETURN v_name;
    END;

    --调用无参存储过程
    DECLARE
    BEGIN
    DBMS_OUTPUT.put_line(
    '在PL/SQL中打印的结果:'||stu_proc);
    END;

               

     

    2、入参存储过程的调用

    --创建入参存储过程
    CREATE OR REPLACE FUNCTION stu_proc(v_id IN NUMBER) RETURN VARCHAR2 IS
    --声明语句段
    v_name varchar2(20);
    BEGIN
    --执行语句段
    SELECT o.sname INTO v_name FROM student o where o.id=v_id;
    RETURN v_name;
    END;

    --调用入参存储过程
    DECLARE
    BEGIN
    DBMS_OUTPUT.put_line(
    '在PL/SQL中打印的结果:'||stu_proc(1));
    END;

                 

    3、出参存储过程的调用

    --创建出参存储过程
    CREATE OR REPLACE FUNCTION stu_proc(v_name OUT VARCHAR2) RETURN VARCHAR2 IS
    BEGIN
    --执行语句段
    SELECT o.sname INTO v_name FROM student o where o.id=2;
    RETURN v_name;
    END;

    --调用出参存储过程
    DECLARE
    v_name student.sname
    %type;
    BEGIN
    DBMS_OUTPUT.put_line(
    '在PL/SQL中打印的结果:'||stu_proc(v_name));
    END;

                  

    4、出入参存储过程的调用

    --创建出入参存储过程
    CREATE OR REPLACE FUNCTION stu_proc(v_id IN NUMBER, v_name OUT VARCHAR2) RETURN VARCHAR2 IS
    BEGIN
    --执行语句段
    SELECT o.sname INTO v_name FROM student o where o.id=v_id;
    RETURN v_name;
    END;

    --调用出入参存储过程
    DECLARE
    v_name
    VARCHAR2(20);
    BEGIN
    DBMS_OUTPUT.put_line(
    '在PL/SQL中打印的结果:'||stu_proc(1, v_name));
    END;
  • 相关阅读:
    Kafka的Controller
    kafka 为什么能那么快?高效读写数据,原来是这样做到的
    kafka的消费
    kafka的数据同步原理ISR、ACK、LEO、HW
    kafka 工作流程及文件存储机制
    kafka的简单架构
    Sangfor AC在线用户显示大量公网IP
    H3C抓包命令
    Android- 音量控制
    call指令的地址是怎么计算出来的。
  • 原文地址:https://www.cnblogs.com/linjiqin/p/2018847.html
Copyright © 2011-2022 走看看