Heim  >  Artikel  >  Datenbank  >  Oracle数据库存储过程和存储函数

Oracle数据库存储过程和存储函数

WBOY
WBOYOriginal
2016-06-07 17:28:021018Durchsuche

存储过程和存储函数 指存储在数据库中供所有用户程序调用的子程序叫存储过程、存储函数。 存储过程没有返回值。存储函数有返回值

存储过程和存储函数

指存储在数据库中供所有用户程序调用的子程序叫存储过程、存储函数。

存储过程没有返回值。存储函数有返回值

创建存储过程

用CREATE PROCEDURE命令建立存储过程和存储函数。

语法:

create [or replace] PROCEDURE过程名(参数列表)

AS

PLSQL子程序体;

存储过程示例:为指定的职工在原工资的基础上长10%的工资

/*

为指定的职工在原工资的基础上长10%的工资,并打印工资前和工资后的工资

*/

SQL> create or replace procedure raiseSalary(empid in number)

as

pSal emp.sal%type;--保存员工当前 工资

begin

--查询该员工的工资

select sal into pSal from emp where empno=empid;

--给该员工涨工资

update emp set sal = sal*1.1 where empno=empid;

--打印涨工资前后的工资

dbms_output.put_line('员工号:' || empid || '涨工资前

' || psal || '涨工资后' || psal*1.1);

end;

1  /

Procedure created

--存储过程调用

--方法一

SQL> set serveroutput on

SQL> exec raisesalary(7369);

员工号:7369涨工资前

800涨工资后880

方法二

set serveroutput on

begin

raisesalary(7369);

end;

/

PL/SQL procedure successfully completed

存储函数

函数(Function)为一命名的存储程序,可带参数,并返回一计算值。函数和过程的结构类似,,但必须有一个RETURN子句,用于返回函数值。函数说明要指定函数名、结果值的类型,以及参数类型等。

linux

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:MongoDB高级查询[聚合Group]Nächster Artikel:MongoDB高级查询[聚合]