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;

复制代码

经验分享 程序员 微信小程序 职场和发展