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 BEGINDBMS_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 BEGINDBMS_OUTPUT.put_line(‘在PL/SQL中打印的结果:’||stu_proc(1));END;