博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle存储过程-自定义数据类型,集合,遍历取值
阅读量:5821 次
发布时间:2019-06-18

本文共 1292 字,大约阅读时间需要 4 分钟。

hot3.png

0.前言   

    在Oracle的存储过程中,可能会遇到数据处理,假如我们目前的功能在一个Packages中

    Packages封装了多个不同功能的Procedure,我们在一个Procedure里面进行统计

    在另外一个Procedure进行计算 这就需要一个存放结果集的地方    

    以前的解决方案是:建立了一个临时表,数据统计出来后,放入临时表中

    在另外一个Procedure中取出来数据,再进行计算 这样需要读写操作 浪费性能

    我们可以使用Oracle的自定义数据类型去创建集合,进行操作

1.Packages

create or replace package test_lu is  -- Author  : LUJIANING  -- Created : 2014-3-12 11:27:34  -- Purpose :     -- Public type declarations  procedure test1;    procedure test2;    procedure test3;end test_lu;

2.Packages bodies

create or replace package body test_lu is  ---创建一个自定义数据类型  TYPE c_user IS RECORD    (   id number,        name varchar2(30)    );    ---根据自定义数据类型创建一个集合  TYPE c_user_array IS TABLE OF c_user INDEX BY BINARY_INTEGER;    ---集合对象  user_array c_user_array;  ---数据对象  user c_user;  ---计数器  v_counter number;         procedure test1 is  begin     user.id:=1;    user.name:='luu';    user_array(user.id):=user;        user.id:=2;    user.name:='lii';    user_array(user.id):=user;          end;    procedure test2 is  begin     for v_counter in 1..user_array.count loop      DBMS_OUTPUT.put_line(user_array(v_counter).id||'...'||user_array(v_counter).name);    end loop;          end;    procedure test3 is  begin    test1;    test2;  end;end test_lu;

3.输出结果

1...luu2...lii

转载于:https://my.oschina.net/lujianing/blog/207482

你可能感兴趣的文章
全新jmeter视频已经上架
查看>>
Windows 8下如何删除无线配置文件
查看>>
解决Windows 7中文件关联和打开方式
查看>>
oracle系列(五)高级DBA必知的Oracle的备份与恢复(全录收集)
查看>>
hp 服务器通过串口重定向功能的使用
查看>>
国外10大IT网站和博客网站
查看>>
对java语言学习的个人看法
查看>>
android第十一期 - SmoothSwitchLibrary仿IOS切换Activity动画效果
查看>>
zabbix 批量web url监控
查看>>
大容量导入和导出数据 -- 格式化文件生成
查看>>
MongoDB CookBook读书笔记之导入导出
查看>>
shell如何快速锁定所有账号
查看>>
HTML 5实现的手机摇一摇
查看>>
Linux 文件IO理解
查看>>
Ninject 2.x细说---2.绑定和作用域
查看>>
30个非常时尚的网页联系表单设计优秀示例
查看>>
使用membership(System.Web.Security)来进行角色与权限管理
查看>>
opticom 语音质量验证白皮书
查看>>
3D实时渲染中的BSP树和多边形剔除
查看>>
Frank Klemm's Dither and Noise Shaping Page: Dither and Noise Shaping In MPC/MP+
查看>>