利用包构建存储过程和存储函数的案例

原创 2012年03月22日 20:25:36
存储过程:
包
create or replace package emppackage is
  -- Author  : ADMINISTRATOR
  -- Created : 2012-3-22 14:02:43
  -- Purpose : 声明一个存储过程 
  -- Public type declarations
  type empcursor is ref cursor;
  -- Public function and procedure declarations
  --声明一个存储过程
  procedure selectEmps(emplist out empcursor);
end emppackage;
包体
create or replace package body emppackage is
  -- Function and procedure implementations
  procedure selectEmps(emplist out empcursor) is
  begin
    open emplist for select * from emp;
  end;
end emppackage;
在命令窗口中调用:
declare
empc1 emppackage.empcursor;
emp_row emp%rowtype;
begin
emppackage.selectEmps(empc1);
loop
fetch empc1 into emp_row;
exit when empc1%notfound;
dbms_output.put_line(emp_row.empno);
end loop;
close empc1;
end;
结果:
2345
7369
7499
7521

存储函数:
包:
create or replace package mypackage is
  -- Author  : ADMINISTRATOR
  -- Created : 2012-3-22 14:06:47
  -- Purpose : 存储函数  
  -- Public type declarations
  type empc1 is ref cursor; 
  function queryEmps return empc1;
end mypackage;
包体:
create or replace package body mypackage is
function queryEmps return empc1 is
  emp_c1 empc1;
  begin
    open emp_c1 for select * from emp;
    return emp_c1;
    end;  
end mypackage;
在命令窗口中调用:
 declare
emp_c1 mypackage.empc1;
emp_row  emp%rowtype;
begin
emp_c1:=mypackage.queryEmps;
loop
 fetch emp_c1 into emp_row;
exit when emp_c1%notfound;
dbms_output.put_line(emp_row.empno);
end loop;
close emp_c1;
end;
结果:
2345
7369
7499
7521

oracle创建包 含存储过程和函数

create table my_toys (     id varchar2(5),      name varchar2(20),      price number ); --插入测试...
  • wdyr321
  • wdyr321
  • 2013年09月18日 00:25
  • 1159

Oracle中的函数和存储过程--真实项目示例

最近,在项目中写了数据库的函数和存储过程,趁此机会,整理了一下。 用户自定义函数是存储在数据库中的代码块,可以把值返回到调用程序。函数的参数有3种类型: (1)in参数类型:表示输入给函数的参数,该...
  • I_Am_Zou
  • I_Am_Zou
  • 2016年07月27日 11:16
  • 1252

存储过程和存储函数的详细区别

存储过程是用户定义的一系列sql语句的集合,涉及特定表或其它对象的任务,用户可以调用存储过程,而函数通常是数据库已定义的方法,它接收参数并返回某种类型的值并且不涉及特定用户表。     存储过程...
  • a672489861
  • a672489861
  • 2013年11月17日 16:36
  • 2589

MYSQL存储过程和存储函数入门

一、MYSQL储存过程简介: 储存过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一些特殊的控制结构组成。当希望在不同的应用程序或平台上执行相同的函数,或者封装特定功能时,存储过...
  • ch18255112191
  • ch18255112191
  • 2015年09月08日 17:43
  • 6559

MySQL——存储过程和函数使用总结

什么是存储过程和函数 存储过程和函数是事先经过编译并存储在数据库中的一段SQL语句的集合,调用存储过程和函数可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的...
  • Goskalrie
  • Goskalrie
  • 2016年11月16日 09:43
  • 1752

Oracle存储过程与存储函数-慕课网学习笔记

存储过程和存储函数 存储在数据库中供所有用户程序调用的子程序叫做存储过程,存储函数.区别:是否可以通过return返回函数值.存储函数可以通过return返回函数值,而存储过程不可以.由于通过out...
  • javaee_sunny
  • javaee_sunny
  • 2016年10月19日 17:40
  • 1346

oracle存储过程与函数的区别

定义: 存储过程(Stored Procedure )是一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程 带有参数)来执行它。 ...
  • u012102536
  • u012102536
  • 2017年08月15日 22:49
  • 440

【oracle学习】10.存储过程和存储函数

前言 学习存储过程的前提是,了解PLSQL的语法和编写方式。 需要了解PLSQL,请查看之前的总结。 我们以下的表操作可能会基于以下两张表: 我们创建一个员工表和部门表: 员工信息表 create...
  • u013517797
  • u013517797
  • 2016年09月12日 14:10
  • 2288

ORACLE 过程、函数、包的区别与联系

一、过程与函数区别1.过程可以有0~N个返回参数,通过OUT or IN OUT参数返回;函数有且仅有1个返回值,通过return语句返回。2.调用过程时,可做为单独的语句执行;调用函数时,函数必须把...
  • kechengtan
  • kechengtan
  • 2011年03月14日 11:56
  • 4373

PLSQL 基础教程 五 常用数据库对象简介(函数存储过程包)

本文简要介绍PLSQL中常用的一些数据库对象,主要包括函数、存储过程和包等等,将从相关的简介、语法、用途等等方面进行介绍。   1.       函数 简介 函数是Oracle中的一个可以单独存在...
  • lucky4016
  • lucky4016
  • 2017年04月17日 17:49
  • 529
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用包构建存储过程和存储函数的案例
举报原因:
原因补充:

(最多只允许输入30个字)