摘要: oracle儲存過程,自定義資料型別,集合,遍歷取值
0.前言
在oracle的儲存過程中,可能會遇到資料處理,假如我們目前的功能在乙個packages中
packages封裝了多個不同功能的procedure,我們在乙個procedure裡面進行統計
在另外乙個procedure進行計算 這就需要乙個存放結果集的地方
以前的解決方案是:建立了乙個臨時表,資料統計出來後,放入臨時表中
在另外乙個procedure中取出來資料,再進行計算 這樣需要讀寫操作 浪費效能
我們可以使用oracle的自定義資料型別去建立集合,進行操作
1.packages
create or replace package test_lu is
-- 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...luu
2...lii
**:
mysql儲存過程之游標遍歷資料表
出處 1 begin 2 declare done int default 0 3 4 declare currentlingqi int 5 6 declare shizuname varchar 30 7 宣告游標 8 declare rs cursor for select nodename,...
mysql儲存過程之游標遍歷資料表
原文 mysql儲存過程之游標遍歷資料表 今天寫乙個mysql儲存過程,根據自己的需求要遍歷乙個資料表,因為對儲存過程用的不多,語法不甚熟悉,加之儲存過程沒有除錯環境,花了不少時間才慢慢弄好,故留個痕跡。1 begin 2 declare done int default 0 3 4 declare...
js遍歷資料
1 使用object.keys 遍歷 返回乙個陣列,包括物件自身的 不含繼承的 所有可列舉屬性 不含symbol屬性 var obj object.keys obj foreach function key 輸出結果 0 a1 b 2 c2 使用for in 遍歷 迴圈遍歷物件自身的和繼承的可列舉屬...