1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Oracle存储过程和存储函数创建

Oracle存储过程和存储函数创建

时间:2021-05-17 02:54:14

相关推荐

Oracle存储过程和存储函数创建

select * from emp;-----------------存储过程--------------------------定义create[or replace] procedure 存储过程名称(参数名 [in]/out 数据类型) is/asbegin--逻辑表达式 end [存储过程名称];--定义存储过程计算年薪,并答应输出create or replace procedure proc_salyears(v_no in number)issal_years number(9,2);begin--计算年薪select sal*12+nvl(comm,0) into sal_years from emp where empno=v_no;--输出dbms_output.put_line(sal_years);end;--调用存储过程方式1:call proc_salyears(7788);方式2:beginproc_salyears(7369);end;--out参数的存储过程--计算年薪并返回 create or replace procedure proc_salyears(v_no in number,sal_years out number)isbegin--计算年薪select sal*12+nvl(comm,0) into sal_years from emp where empno=v_no;end;--调用存储过程declarev_sal number(9,2);beginproc_salyears(7876,v_sal);dbms_output.put_line(v_sal);end;-----------------存储函数--------------定义create or replace function 存储函数名(参数名 in/out 数据类型)return 数据类型is|asbeginreturn 具体的数据;end [存储函数名称];--定义存储函数名计算年薪create or replace function fun_salyears(f_no number)return numberissal_years number(9,2);beginselect sal*12+nvl(comm,0) into sal_years from emp where empno=f_no;return sal_years;end ;--使用存储函数declaresal_yeats number(9,2);beginsal_yeats := fun_salyears(7876);dbms_output.put_line(sal_yeats);end;--可简写begindbms_output.put_line(fun_salyears(7369));end;--------存储过程和存储函数的区别--------存储过程多用于项目之间的数据共享,存储函数多被存储过程调用.存储函数可以再sql语句中调用,存储过程不能.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。