oracle函数调用存储过程
可视化编辑器,alt+1到9键,切换到工具区,tab键,选择按钮,esc键,返回编辑
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;
复制代码