PLSQL學習-【4複合資料型別】
記錄record:(變數存放一行值)
declare type tp_emp is record(ename emp.ename%type ,empno emp.empno%type,sal emp.sal%type); v_tp tp_emp; begin select ename,empno,sal into v_tp from emp where empno = 7788; dbms_output.put_line(v_tp.ename ||' '|| v_tp.empno ||' ' || v_tp.sal); end;
rowtype:(select後必須全部列出來
)
declare v_tp emp%rowtype; begin select empno,ename,job,mgr,hiredate,sal,comm,deptno into v_tp from emp where empno = 7788; dbms_output.put_line(v_tp.ename); end;
table:
索引表:
declare 14:31:07 2 type tp_emp is table of emp.ename%type index by binary_integer; 14:39:28 3 v_tp tp_emp; 14:39:36 4 begin 14:39:38 5 select ename into v_tp(1) from emp where empno = 7788; 14:40:01 6 dbms_output.put_line(v_tp(1)); 14:40:18 7 end; 14:40:21 8 /
巢狀表:(得初始化)
declare type tp_emp is table of emp.ename%type; v_tp tp_emp:=tp_emp(); begin v_tp.extend; select ename into v_tp(1) from emp where empno = 7788; dbms_output.put_line(v_tp(1)); end;
declare type tp_emp is table of emp.ename%type index by binary_integer; v_tp tp_emp; begin select ename into v_tp(1) from emp where empno = 7788; select ename into v_tp(2) from emp where empno = 7900; select ename into v_tp(3) from emp where empno = 7369; dbms_output.put_line(v_tp(1)||' '||v_tp(2)||' '||v_tp(3)); dbms_output.put_line('count'|| v_tp.count); --總計多少個角標。 dbms_output.put_line('first'|| v_tp.first); dbms_output.put_line('last'|| v_tp.last); dbms_output.put_line('prior(3)'|| v_tp.prior(3)); dbms_output.put_line('next(2)'|| v_tp.next(2)); if v_tp.exists(3) then dbms_output.put_line('exists(3)'||1); else dbms_output.put_line('exists(3)'||); end if; v_tp.delete(1); dbms_output.put_line(v_tp.count); dbms_output.put_line(v_tp(2)||' '||v_tp(3)); --v_tp.trim(1); dbms_output.put_line(v_tp.count); end;
table叫table的原因,其實是儲存一列值的,但是當以一行值為元素即rowtype,就會構成table;
列印dept表:
點選( 此處)摺疊或開啟
-
declare
-
type tp_dept is table of dept %rowtype index by binary_integer ;
-
v_tp tp_dept ;
-
cursor cu_dept is select * from dept ;
-
v_num number ;
-
begin
-
v_num : =1 ;
-
for i in cu_dept loop
-
select * into v_tp (v_num ) from dept where deptno = i .deptno ;
-
v_num : =v_num +1 ;
-
end loop ;
-
for j in 1 . .v_tp . count loop
-
dbms_output .put_line (v_tp (j ) .deptno | | \ ' \' | | v_tp (j ) .dname | | \ ' \' | |v_tp (j ) .loc ) ;
-
-
end loop ;
-
end ;
可變陣列:略
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29990276/viewspace-1341745/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PL/SQL基本結構---PLSQL複合型別---表型別變數tableSQL型別變數
- Go語言學習(4) - 基本資料型別Go資料型別
- Solidity-變數和資料型別[複合型別_1]Solid變數資料型別
- day 4 – 2 資料型別練習資料型別
- 複合型別(json)型別JSON
- 第 10 節:複合型別 小練習!型別
- 深入學習JavaScript資料型別JavaScript資料型別
- Python學習之資料型別Python資料型別
- TypeScript學習(一)—— 資料型別TypeScript資料型別
- 組合資料型別資料型別
- JavaScript學習之資料型別(1)JavaScript資料型別
- sql學習(mysql)(1)資料型別MySql資料型別
- 資料型別 - Go 學習記錄資料型別Go
- js學習之路3: 資料型別JS資料型別
- Python學習 —— 內建資料型別Python資料型別
- Python學習教程:基本資料型別Python資料型別
- Python 學習筆記——資料型別Python筆記資料型別
- 4.資料型別資料型別
- Redis學習筆記(Jedis&資料型別&持久化&主從複製)Redis筆記資料型別持久化
- 【Python】組合資料型別Python資料型別
- 資料結構複習-01enum列舉型別資料結構型別
- Python學習筆記(一) 資料型別Python筆記資料型別
- PHP基本語法學習 [資料型別]PHP資料型別
- 第二週學習--基本資料型別資料型別
- 學習python的資料型別——元組Python資料型別
- 來學習typescript 吧! --6 聯合型別 | 交叉型別 |型別斷言TypeScript型別
- Python3學習(基本資料型別-集合-字典-基本資料型別總結)Python資料型別
- C#學習筆記--複雜資料型別、函式和結構體C#筆記資料型別函式結構體
- C++ Primer Plus 第四章 複合型別 學習筆記C++型別筆記
- 全網最適合入門的物件導向程式設計教程:42 Python常用複合資料型別-collections容器資料型別物件程式設計Python資料型別
- 什麼是組合資料型別?Python組合資料型別分為幾類?資料型別Python
- JavaScript基礎複習(一) 語言特性及資料型別JavaScript資料型別
- 資料型別綜合應用資料型別
- python組合資料型別(集合)Python資料型別
- hive複雜資料型別的用法Hive資料型別
- 02. 複合型別(Composite Types)型別
- Python 3 學習筆記之——資料型別Python筆記資料型別
- Python3學習-(基本資料型別-列表)Python資料型別
- Python3學習-(基本資料型別-字串)Python資料型別字串