plsql_varray_自定義type之測試小例_user_types
---varray類似於index by ,但元素個數有限,元素引用同index by
SQL> r
1 declare
2 type table_type is varray(4) of number;
3 table1 table_type;
4 begin
5 table1:=table_type(1,2,3);
6 dbms_output.put_line('varary total number: '||table1.count);
7 for i in 1..table1.count loop
8 dbms_output.put_line(table1(i));
9 end loop;
10* end;
varary total number: 3
1
2
3
PL/SQL procedure successfully completed.
SQL> select owner,type_name,attributes,methods from dba_types where type_name like 'PL%';--用dba_types查plsql引用的資料型別
OWNER TYPE_NAME ATTRIBUTES METHODS
------------------------------ ------------------------------ ---------- ----------
PL/SQL BINARY INTEGER 0 0
PL/SQL BOOLEAN 0 0
PL/SQL COLLECTION 0 0
PL/SQL LONG 0 0
PL/SQL LONG RAW 0 0
PL/SQL NATURAL 0 0
PL/SQL NATURALN 0 0
PL/SQL PLS INTEGER 0 0
PL/SQL POSITIVE 0 0
PL/SQL POSITIVEN 0 0
PL/SQL RECORD 0 0
OWNER TYPE_NAME ATTRIBUTES METHODS
------------------------------ ------------------------------ ---------- ----------
PL/SQL REF CURSOR 0 0
PL/SQL ROWID 0 0
PL/SQL STRING 0 0
14 rows selected.
conn scott/system
create type zxy_type as object(x number,y number);--檢視user|dba_objects可查出此定義的資料型別,此後你在plsql或者在表中可引用此資料型別
SQL> r
1 declare
2 type new_type is varray(10) of zxy_type; --在plsql中引用以上定義的type zxy_type,請注意採用了varray(說明type可以巢狀定義引用,此處就是varray引用了另一個型別type zxy_type)
3 zxy_type_1 new_type:=new_type();--初始化變數zxy_type_1(以它的型別例項化)
4 new_child zxy_type;--定義zxy_type型別的變數
5 value_child zxy_type;--定義另一個zxy_type型別的變數
6 begin
7 value_child:=zxy_type(6,6);--提供value_child一個值
8 zxy_type_1:=new_type(zxy_type(2,3),zxy_type(4,5),zxy_type(7,8),value_child);--為變數(複合)提供一系列值,注意最後一個slot元素的值是6,6
9 for i in 1..zxy_type_1.count loop --採用count(count是特殊變數型別的元素個數)
10 new_child:=zxy_type_1(i);--為變數型別用for loop進行迴圈提供值
11 dbms_output.put_line('new_child''s x is '||new_child.x||' new_child''s y is '||new_child.y);--列印顯示new_child的值,真正定位用 變數名字.變數所引用資料型別的屬性名字
12 end loop;
13* end;
new_child's x is 2 new_child's y is 3
new_child's x is 4 new_child's y is 5
new_child's x is 7 new_child's y is 8
new_child's x is 6 new_child's y is 6
PL/SQL procedure successfully completed.
SQL>
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-671197/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 自定義 Composer 包 dome 小測試
- 自定義xunit測試用例的執行順序
- XMind2TestCase 自定義測試用例設計模板
- 微信小程式之『自定義toast』微信小程式AST
- Jmeter介面測試例項-牛刀小試JMeter
- 測試 iris 時自定義 context 包Context
- 介面測試--自定義斷言設定
- MapReduce程式設計例項之自定義排序程式設計排序
- input[type="radio"]自定義樣式
- 小代學Spring Boot之自定義StarterSpring Boot
- c#多型性測試小例C#多型
- 自動化測試 RobotFramework自定義靜態測試類庫總結Framework
- MapReduce程式設計例項之自定義分割槽程式設計
- 編寫自定義 Laravel 擴充套件包測試用例,phpunit 錯誤提示 “class not found”Laravel套件PHP
- 微信小程式之自定義倒數計時元件微信小程式元件
- 09.AutoMapper 之自定義型別轉換器(Custom TypeAPP型別
- MySQL 效能壓測工具,從入門到自定義測試項MySql
- 異常-自定義異常的實現和測試
- 專業版即將支援自定義場景測試
- Appium 之測試微信小程式APP微信小程式
- Appium之測試微信小程式APP微信小程式
- 軟體測試之網站測試如何進行?測試小攻略走起!網站
- 微信小程式自定義tabBar微信小程式tabBar
- 微信小程式 自定義tabbar微信小程式tabBar
- 微信小程式自定義事件微信小程式事件
- MySQL 效能壓測工具-sysbench,從入門到自定義測試項MySql
- 測試面試-測試用例面試
- locust+influxdb+grafana 實現自定義測試報告UXGrafana測試報告
- MapReduce之自定義OutputFormatORM
- MapReduce之自定義InputFormatORM
- 自定義View之SwitchViewView
- MapReduce之自定義partitioner
- test oracle array的使用,透過type來自定義arrayOracle
- C語言[工程專案應用]gtest測試框架編寫以及自定義測試框架C語言框架
- 介面測試平臺-66: 多介面用例實現之 小用例:新增+刪除+關閉+排序排序
- 自定義View實用小技巧View
- 測試用例
- 微信小程式之滲透測試、加固、安全檢測微信小程式