过程、函数与包都属于PL/SQL语句块中的命名块,过程和函数统称为子程序。过程和函数非常相似,具有如下特点:
1、都具有名称,可以接收收入或传出参数。
2、都具有声明部分、执行部分和异常处理部分。
3、在使用前会被编译并存储到数据库中,可以使用Toad或Oracle SQL Developer 来查看数据库中已经存在的过程和函数。
注意:
函数与过程最大的不同在于函数具有返回值,而过程没有。
create or replace procedure addempsalary (p_ratio number,p_empno number)
as
begin
if p_ratio>0
then ---判断传入的参数是否大于0
--如果大于0,则更新emp表中的数据
update scott.emp
set sal=sal*(1+p_ratio)
where empno=p_empno;
end if;
--提示加薪成功
dbms_output.put_line('加薪成功!');
end;