使用复合数据类型——PL/SQL表
pl/sql表也称为索引表,它类似于高级语言的一维数组。p/sql记录用于处理单行多列数据,而pl/sql表用于处理多行单列数据。
注意:高级语言数组的元素个数是有限制的,而且下标不能为负;而pl/sql表的元素个数没有限制,而且下标可以为负;
使用pl/sql表处理单行单列数据
例子:根据雇员号输出雇员名:
@d:demo\s; declare type ename_table_type is table of emp.ename%type index by binary_integer; ename_table ename_table_type; begin select ename into ename_table(1) from emp where empno=&eno; dbms_output.put_line('雇员名: '||ename_table(1)); end; /
输入eno的值:7788
雇员名: SCOTT
使用pl.sql表处理单列多行数据
例子:根据部门号输出该部门的所有雇员名:
declare type ename_table_type is table of emp.ename%type index by binary_integer; ename_table ename_table_type; begin select ename bulk collect into ename_table from emp where deptno=&dno; for i in 1..ename_table.count loop dbms_output.put_line('雇员名: '||ename_table(i)); end loop; end; /
posted on 2013-05-01 17:52 LinuxPanda 阅读(286) 评论(0) 编辑 收藏 举报