过程,函数,包
来源:互联网 发布:excel vba 数组赋值 编辑:程序博客网 时间:2024/06/06 02:30
过程,函数和包都属于PL/SQL语句块中的命名块。
过程和函数最大的不同之处在于函数有返回值,过程没有。
下面用一个实例来说明三者之间的关系:
--包规范定义
create or replace package empsalary
as
procedure addempsalary (p_ratio number,p_empno number);
function getaddsalaryratio(p_job varchar2);
function getaddsalaryratiocase (p_job varchar2);
end empsalary;
--包体定义
create or replace package body empsalary
as
procedure addempsalary(p_ratio number,p_empno number);
as
begin
if p_ratio > 0
then
update scott.emp set sal = sal * (1 + p_ratio) where empno = p_empno;
end if;
dbms_output.put_line('加薪成功!');
end;
/*加薪函数*/
function getaddsalaryratio (p_job varchar2)
return number
as
v_result number(7,2)
begin
if p_job = 'clerk'
then
v_result := 0.10;
elsif p_job = 'salesman'
then
v_result := 0.12;
elsif p_job = 'manager'
then
v_result := 0.15;
end if;
return v_result;
end;
--使用case-when
function getaddsalaryratiocase(p_job varchar2)
as
begin
case p_job
when 'clerk'
then v_result := 0.10;
when 'salesman'
then v_result := 0.12;
when 'manager'
then v_result := 0.15;
end case;
end;
end empsalary;/
- 游标、过程、函数、包
- oracel[过程+函数+包]
- 过程 函数 包
- 过程,函数,包
- oracle 存储过程 函数 包
- oracle 存储过程 函数 包
- 过程、函数和包举例
- oracle存储过程,函数,包
- oracle 过程、函数、包、触发器
- Oracle 过程、函数、触发器、包
- 存储过程调用包中的函数
- PLSQL中过程、函数、包、触发器
- Oracle中编译过程,函数和包
- pl/sq之过程,函数,包,触发器
- plsql 语法、过程、函数、包、触发器
- pl/sq之过程,函数,包,触发器
- Oracle 存储过程,函数和包。
- Oracle object unlock - 表,包,过程,函数
- 《APUE》Chapter 8 Process control(学习笔记加上自己的代码)
- Microsoft Team Foundation Server 2010安装与序列号
- Excel VBA 锁定特定单元格
- JSP的中文乱码解决方案
- Http Message
- 过程,函数,包
- Windows Azure改名为Microsoft Azure
- Java运算符详解
- zigbee让设备直接加入网络(DirectJion) (附代码)
- 哦哦哦哦哦!我来了
- linux下select模型 fd_set
- 常见子查询错误
- python中socket处于close_wait状态
- 电力IEC 103