1、PLSQL 中的包就相当于java中的package,主要好处有(1)防止命名污染,(2)功能统一,(3)允许重载,(4)可以隐藏核心代码,(5)最重要的就是断开依赖链。

2、对于一个程序需要大量的代码,需要要大量的存储过程就非得用包来实现,一次就把程序加载进去,然后就可以调用了。

3、在建包的时候,基本步骤就是(1)先create package,在里面声明procedure,(2)然后就是create package body,在package body里面编写procedure的代码即可。

4、在包里面可以建立procedure,同时也可以建立这个function,这样都封装在一起,变为私有的资源就非常便于程序的保护,同时这些代码都是一次性的调入内存中,执行起来也是非常快的。

5、总之,对于简单的程序就建立一个存储过程procedure就可以了,但是对于复杂的程序就需要建包package。
SQL> create or replace package sp_package is
2 procedure sp_pack_pro1(id_in varchar2,name_in varchar2);
3 function sp_pack_fun1(mon_in number,id_in varchar2) return number;
4 end;
5 / Package created SQL>
SQL> create or replace package body sp_package is
2 procedure sp_pack_pro1(id_in varchar2,name_in varchar2) is
3 begin
4 update mytest set name=name_in where id=id_in;
5 end;
6 function sp_pack_fun1(mon_in number,id_in varchar2)
7 return number is
8 sal_monsum number(7,2);
9 begin
10 select salary*mon_in into sal_monsum from mytest where id=id_in;
11 return sal_monsum;
12 end;
13 end;
14
15 / Package body created SQL> exec sp_package.sp_pack_pro1('wuwuwu',''); PL/SQL procedure successfully completed

PL/SQL编程—包的更多相关文章

  1. [强烈推荐]ORACLE PL/SQL编程详解之七:程序包的创建与应用(聪明在于学习,天才在于积累!)

    原文:[强烈推荐]ORACLE PL/SQL编程详解之七:程序包的创建与应用(聪明在于学习,天才在于积累!) [强烈推荐]ORACLE PL/SQL编程详解之七: 程序包的创建与应用(聪明在于学习,天 ...

  2. ORACLE PL/SQL编程详解

    ORACLE PL/SQL编程详解 编程详解 SQL语言只是访问.操作数据库的语言,并不是一种具有流程控制的程序设计语言,而只有程序设计语言才能用于应用软件的开发.PL /SQL是一种高级数据库程序设 ...

  3. pl/sql编程

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  4. ORACLE PL/SQL编程之八:把触发器说透

    原文:ORACLE PL/SQL编程之八:把触发器说透 ORACLE PL/SQL编程之八: 把触发器说透 大家一定要评论呀,感谢!光发表就花了我将近一个下午. 本篇主要内容如下: 8.1 触发器类型 ...

  5. [推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼、百战不殆)

    原文:[推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼.百战不殆) [推荐]ORACLE PL/SQL编程之五: 异常错误处理(知已知彼.百战不殆) 继上三篇:ORACLE PL/S ...

  6. ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!)

    原文:ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!) ORACLE PL/SQL编程之六: 把过程与函数说透(穷追猛打,把根儿都拔起!)   继上篇:ORACLE P ...

  7. [推荐]ORACLE PL/SQL编程之四:把游标说透(不怕做不到,只怕想不到)

    原文:[推荐]ORACLE PL/SQL编程之四:把游标说透(不怕做不到,只怕想不到) [推荐]ORACLE PL/SQL编程之四: 把游标说透(不怕做不到,只怕想不到) 继上两篇:ORACLE PL ...

  8. 【强烈强烈推荐】《ORACLE PL/SQL编程详解》全原创(共八篇)--系列文章导航

    原文:[强烈强烈推荐]<ORACLE PL/SQL编程详解>全原创(共八篇)--系列文章导航 <ORACLE PL/SQL编程详解> 系列文章目录导航 ——通过知识共享树立个人 ...

  9. [推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)

    原文:[推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下) [推荐]ORACLE PL/SQL编程详解之一: PL/SQL 程序设计简介(千里之行,始于足下 ...

随机推荐

  1. 一行python打印乘法表

    一行代码打印乘法表 >>> print '\n'.join([' '.join(['%s*%s=%-2s' %(y,x,x*y) for y in range(1,x+1)]) fo ...

  2. Bootstrap打印问题

    删除bootstrap的样式引用,就可以正常打印预览了. bootstrap 设置了@media print相关属性导致 @media print { * { color: #000 !importa ...

  3. 一个stream!=NULL 的问题 fclose.c 47

    运行一段时间会出现如下错误提示:Debug Assertion Failed!Program:...File:fseek.cline:100Expression: (stream!=NULL) 点Re ...

  4. Android开源-NineOldAndroids

    开源地址: https://github.com/JakeWharton/NineOldAndroids 简单介绍:NineOldAndroids是一款支持在低版本号开发的Android动画的框架 包 ...

  5. SharePoint 2013/2010 在一个列表或文档库内移动列表项,文档和目录位置而保持last modify by 等系统字段保持不变

    本文讲述SharePoint 2013/2010 在一个列表或文档库内移动列表项.文档和目录位置而保持last modify by 等系统字段保持不变的解决方式. 近期遇到客户一个需求,在一个列表或文 ...

  6. SQL语句的添加、删除、修改多种方法 —— 基本操作

    添加.删除.修改使用db.Execute(Sql)命令执行操作 ╔----------------╗ ☆ 数据记录筛选 ☆ ╚----------------╝ 注意:单双引号的用法可能有误(没有测试 ...

  7. JZOJ.5236【NOIP2017模拟8.7】利普希茨

    Description

  8. python中的json和pickle

    author:headsen chen date::2018-04-10  09:56:54 json模块和pickle模块: 这是用于序列化的两个模块: 概念介绍:json和pickle模块是将数据 ...

  9. 【BZOJ4566】[Haoi2016]找相同字符 后缀数组+单调栈

    [BZOJ4566][Haoi2016]找相同字符 Description 给定两个字符串,求出在两个字符串中各取出一个子串使得这两个子串相同的方案数.两个方案不同当且仅当这两 个子串中有一个位置不同 ...

  10. Mac中pico编辑器的使用方法

    Pico是一个由华盛顿大学(University of Washington)计算与通讯研究所(Computing and Communications Group)编写并维护的文本编辑程序,在多个版 ...