oracle存储过程和存储函数创建方法(详细的解决方案)
SELECT * FROM emp;------------------------存储的发展过程
-定义
创建{或替换}过程存储过程名(参数名称{ } /输出数据类型)
是/作为
开始
逻辑表达式
结束{存储过程名称};
-定义存储过程的年度工资并承诺输出
创建或替换程序proc_salyears(v_no数量)
是
sal_years数(9,2);
开始
计算年薪
选择萨尔* 12 + NVL(通讯,0)为sal_years从EMP在v_no empno =;
输出
dbms_output.put_line(sal_years);
结束;
-调用存储过程
模式1:
电话proc_salyears(7788);
模式2:
开始
(7369)proc_salyears;
结束;
输出参数的存储过程
-计算年薪和回报
创建或替换程序proc_salyears(v_no数量,sal_years号)
是
开始
计算年薪
选择萨尔* 12 + NVL(通讯,0)为sal_years从EMP在v_no empno =;
结束;
-调用存储过程
声明
v_sal数(9,2);
开始
proc_salyears(7876,v_sal);
dbms_output.put_line(v_sal);
结束;
开发存储功能
-定义
创建或替换函数存储函数名(参数名称在输入/输出数据类型)
返回数据类型
是|作为
开始
返回特定数据;
结束{存储函数名};
-定义存储函数名的年薪
创建或替换功能fun_salyears(f_no号)
返回数
是
sal_years数(9,2);
开始
选择萨尔* 12 + NVL(通讯,0)为sal_years从EMP在f_no empno =;
返回sal_years;
结束;
-使用存储功能
声明
sal_yeats数(9,2);
开始
sal_yeats:= fun_salyears(7876);
dbms_output.put_line(sal_yeats);
结束;
-可以缩写
开始
dbms_output.put_line(fun_salyears(7369));
结束;
-存储过程和存储功能的差异。
存储过程主要用于项目之间的数据共享,存储函数由存储过程调用。
存储函数可以在SQL语句中再次调用,而存储过程不是。