oracle学习总结-----package

---package(包),相当于java中的类
--包规范(包头)和包主体
--包头
--create or replace package 包名
--is|as
--可以声明变量,常量,游标,函数,存储过程
--end;


--包主体
--create or replace package body 包名
--is|as
--变量,常量,游标,函数,存储过程的定义
--begin
--包主体内部执行部分
--end;


--注意事项:
--1、包头和包主体必须一致,包内的对象名字必须保持一致,
--2、在包头内声明的对象,必须在包主体内定义
--3、包主体的执行部分在当前会话只执行一次






------------------------------------------------
  
  --先创建包头,然后创建包主体
create or replace package apk
  is
  --声明一个存储过程,输出helloworld
  procedure pro_print;
  
  --声明一个函数,求出两个数的h和与差
  --function fun_airith(num1 in out number,num2 in out number) return number;
  end;
  
  
  
 create or replace package body apk
 is
 
 --定义一个存储过程,输出helloworld
  procedure pro_print
  is
  begin
    dbms_output.put_line('Hello world');
    end;
 --begin--如果没有执行部分,可以没有begin
 end;
 
 
 declare 
 begin
   apk.pro_print;
 end;
 
 
 
 drop package apk;
 drop package body apk;
 
 ------------------------------------------------------------
 
--实例:创建一个包,定义一个游标,实现游标遍历


create or replace package apk_cursor
is
cursor cur return emp%rowtype;--声明游标


end;


create or replace package body apk_cursor
is
 cursor cur return emp%rowtype is select * from emp;--定义游标


begin
  for temp in cur loop
    dbms_output.put_line('ename=' || temp.ename);
    end loop;  
end;






declare 
begin
  for temp in apk_cursor.cur loop
     dbms_output.put_line('ename=' || temp.ename);
    end loop;
  end;
  
  
  
  --封装一个包,用游标查询20号部门的员工,薪资,
  --用存储过程salesame加薪,每个员工加500,用函数删除mgt为空的员工
  
  
  
  





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值