PL/SQL编程—包

简介: PL/SQL编程—包

55cdd84ba86f361ac9db7a5f9184e5d4.png

04e6e8c2ef993d255687bdb4514a2a29.png

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','1');
PL/SQL procedure successfully completed


目录
相关文章
|
2月前
|
SQL Oracle 关系型数据库
SQL与PL/SQL:数据库编程语言的比较
【8月更文挑战第31天】
45 0
|
2月前
|
SQL 数据库 索引
SQL 编程最佳实践简直太牛啦!带你编写高效又可维护的 SQL 代码,轻松应对数据库挑战!
【8月更文挑战第31天】在SQL编程中,高效与可维护的代码至关重要,不仅能提升数据库性能,还降低维护成本。本文通过案例分析探讨SQL最佳实践:避免全表扫描,利用索引加速查询;合理使用JOIN,避免性能问题;避免使用`SELECT *`,减少不必要的数据传输;使用`COMMIT`和`ROLLBACK`确保事务一致性;添加注释提高代码可读性。遵循这些实践,不仅提升性能,还便于后期维护和扩展。应根据具体情况选择合适方法并持续优化SQL代码。
28 0
|
4月前
|
SQL XML Java
后端数据库开发JDBC编程Mybatis之用基于XML文件的方式映射SQL语句实操
后端数据库开发JDBC编程Mybatis之用基于XML文件的方式映射SQL语句实操
62 3
|
4月前
|
SQL 数据库 Perl
PL/SQL中执行按钮变为灰色后如何恢复【已解决】
PL/SQL中执行按钮变为灰色后如何恢复【已解决】
335 0
|
5月前
|
SQL 分布式计算 关系型数据库
Spark编程实验三:Spark SQL编程
Spark编程实验三:Spark SQL编程
81 1
|
4月前
|
SQL 存储 安全
sql数据库优点,SQL数据库的优点包
SQL数据库优点概述:结构化数据存储,保证一致性和完整性;支持事务处理、数据安全机制;擅长大规模数据处理,标准化查询语言,具良好可移植性;灵活定制,支持多用户并发;具备备份恢复机制,适合数据分析和报表;拥有成熟生态系统和工具支持,广泛应用于各类场景。
52 0
|
5月前
|
SQL Oracle 关系型数据库
Oracle的PL/SQL游标属性:数据的“导航仪”与“仪表盘”
【4月更文挑战第19天】Oracle PL/SQL游标属性如同车辆的导航仪和仪表盘,提供丰富信息和控制。 `%FOUND`和`%NOTFOUND`指示数据读取状态,`%ROWCOUNT`记录处理行数,`%ISOPEN`显示游标状态。还有`%BULK_ROWCOUNT`和`%BULK_EXCEPTIONS`增强处理灵活性。通过实例展示了如何在数据处理中利用这些属性监控和控制流程,提高效率和准确性。掌握游标属性是提升数据处理能力的关键。
|
5月前
|
SQL Oracle 关系型数据库
Oracle的PL/SQL游标自定义异常:数据探险家的“专属警示灯”
【4月更文挑战第19天】Oracle PL/SQL中的游标自定义异常是处理数据异常的有效工具,犹如数据探险家的警示灯。通过声明异常名(如`LOW_SALARY_EXCEPTION`)并在满足特定条件(如薪资低于阈值)时使用`RAISE`抛出异常,能灵活应对复杂业务规则。示例代码展示了如何在游标操作中定义和捕获自定义异常,提升代码可读性和维护性,确保在面对数据挑战时能及时响应。掌握自定义异常,让数据管理更从容。
|
5月前
|
SQL Oracle 安全
Oracle的PL/SQL游标异常处理:从“惊涛骇浪”到“风平浪静”
【4月更文挑战第19天】Oracle PL/SQL游标异常处理确保了在数据操作中遇到的问题得以优雅解决,如`NO_DATA_FOUND`或`TOO_MANY_ROWS`等异常。通过使用`EXCEPTION`块捕获并处理这些异常,开发者可以防止程序因游标问题而崩溃。例如,当查询无结果时,可以显示定制的错误信息而不是让程序终止。掌握游标异常处理是成为娴熟的Oracle数据管理员的关键,能保证在复杂的数据环境中稳健运行。
|
5月前
|
SQL Oracle 关系型数据库
Oracle的PL/SQL中FOR语句循环游标的奇幻之旅
【4月更文挑战第19天】在Oracle PL/SQL中,FOR语句与游标结合,提供了一种简化数据遍历的高效方法。传统游标处理涉及多个步骤,而FOR循环游标自动处理细节,使代码更简洁、易读。通过示例展示了如何使用FOR循环游标遍历员工表并打印姓名和薪资,对比传统方式,FOR语句不仅简化代码,还因内部优化提升了执行效率。推荐开发者利用这一功能提高工作效率。
下一篇
无影云桌面