Oracle学习笔记20150911pl/sql编程

来源:互联网 发布:大连理工软件学院地址 编辑:程序博客网 时间:2024/05/21 14:57

1.编写一个过程能根据输入的雇员编号并更新雇员编号

create or replace procedure aa(in_empno in number,in_empno2 in number) is
v_ename varchar2(32);
begin
select ename into v_ename from emp where empno=in_empno;      //这句是为了让exception能捕获no_data_found错误,这里需要注意的是exception的适用范围.
update emp set empno=in_empno2 where empno=in_empno;
exception
when no_data_found then
dbms_output.put_line('输入有误');
end;
/

2.建立函数的基本语法(函数体内必须包含return语句返回的数据)

create function 函数名(参数1...)

return 类型 is

定义变量

begin

执行语句

end;

3.编写一个接收雇员名字返回年薪的函数

create or replace function fun1(in_v_ename varchar2)
return number is
v_annual_sal number;
begin
select (sal+nvl(comm,0))*13 into v_annual_sal from emp where ename=in_v_ename;
return v_annual_sal;
end;
/

4.可以用create package命令创建包

包可以更好地管理自己写的函数,过程,包的基本语法为:
create package 包名 is

procedure 过程名(变量名 变量类型...);

function 函数名(变量名 变量类型...)return 数据类型;

end;

0 0