PLSQL集合

  

PLSQL

<李>

关联数组

<李>

嵌套表<李>

varray

<李>

——背后,,,,,,,,,,,,,,,

——element_type

——index_type

——:

table_name(指数);

1——student10

——

申报的东西   ——声才能明游标,保存10个学生姓名   cursor  c_student    ,,select  last_name   ,,,,得到学生   ,,,,where  rownum  & lt;=, 10;,   ——声才能明索引表集合类型   ,type  last_name_type  is  table  of  student.last_name %类型   ,,index  by  pls_integer;,,,   ——声才能明集合变量   ,last_name_tab  last_name_type;   ——声才能明下标变量   ,v_index  pls_integer :=, 0;   开始   ——才能遍历游标   forr_student 才能拷贝c_student 循环   ,,v_index :=, v_index  +, 1;   ,,,将学生姓名保存到集合中   ,,last_name_tab (v_index),:=, r_student.last_name;,   endloop才能;   ——才能遍历集合   fori 才能拷贝1 . . 10,循环   (,,,dbms_output.put_line last_name_tab(我));   endloop才能;   ——才能注意:引用不存在的集合元素会抛出NO_DATA_FOUND异常。   ,,,例如   ,——dbms_output.put_line (last_name_tab (11));   之前结束;

——INDEXBY

,

申报的东西   ——声才能明游标,保存10个学生姓名   cursor  c_student    ,,select  last_name   ,,,,得到学生   ,,,,where  rownum  & lt;=, 10;,,,   ——声才能明嵌套表集合类型   ,type  last_name_type  is  table  of  student.last_name %类型;   ——声才能明集合变量。必须使用构造器函数进行初始化   last_name_tab 才能;last_name_type :=, last_name_type ();   ——声才能明下标变量   v_indexpls_integer 才能;:=,0;   开始   ——才能遍历游标   forr_student 才能拷贝c_student 循环   ,,v_index :=, v_index  +, 1;   ,,,必须调用扩展方法添加存储空间   ,,,last_name_tab.extend;,,,,,,,,,,和数组一样,每赋值一个元素需调用扩展   ,,,将学生姓名保存到集合中   ,,last_name_tab (v_index),:=, r_student.last_name;,   endloop才能;   ——才能遍历集合   fori 才能拷贝1 . . 10,循环   (,,,dbms_output.put_line last_name_tab(我));   ,,endloop;   之前结束;

——size_limit

,

——

申报的东西   ——声才能明游标,保存10个学生姓名   cursor  c_student    ,,select  last_name   ,,,,得到学生   ,,,,where  rownum  & lt;=, 10;   ——声才能明变长数组集合类型   type 才能last_name_type  is  varray (10), of  student.last_name %类型;,   ——声才能明集合变量。必须使用构造器函数进行初始化   last_name_tab 才能;last_name_type :=, last_name_type ();   ——声才能明下标变量   ,v_index  pls_integer :=, 0;   开始   ——才能遍历游标   forr_student 才能拷贝c_student 循环   ,,v_index :=, v_index  +, 1;   ,,,必须调用扩展方法添加存储空间   ,,,last_name_tab.extend;,,,,每赋值一个元素需调用扩展   ,,,将学生姓名保存到集合中   ,,last_name_tab (v_index),:=, r_student.last_name;,   endloop才能;   ——才能遍历集合   fori 才能拷贝1 . . 10,循环   (,,,dbms_output.put_line last_name_tab(我));   ,,endloop;   结束;

——

Oracle 9 ipl/SQL

:

varray_name (subscript 从而;outer varray)

,,,,,,,,,, (subscript 的,内部varray)

申报的东西   ——声才能明变长数组类型   typevarray_type1 才能;is  varray (4), of 数量;   ——声才能明多层集合(二维数组)   typevarray_type2 才能;is  varray (3), of  varray_type1;   varray1varray_type1 才能;:=,varray_type1 (2、4、6、8);   varray2varray_type2 才能;:=,varray_type2 (varray1);   开始   ,varray2.extend;,,调用扩展   varray2才能(2):=,varray_type1 (1、3、5、7);   ,varray2.extend;,,调用扩展   varray2才能(3):=,varray_type1 (8 8 8 8),,   ——才能遍历集合   for 才能小姐:in1 . . 3,循环   ,,,for  j  in . . 4,循环   ,,,,,dbms_output.put_line (“varray2(“| |我| |”)(“| | j   ,,,,,| | ')=' | | varray2(我)(j));   null   null   null   null   null   null   null   null   null   null   null   null   null

PLSQL集合