使用复合数据类型——PL/SQL记录表


pl/sql变量用于处理单行单列数据,pl/sql记录用于处理单行多列数据,pl/sql表用于处理单列多行数据。为了在pl/sql块中处理多行多列数据,开发人员可以使用pl/sql记录表。pl/sql记录表结合了pl/sql记录和pl/sql表的优点,它类似有高级语言中的多维数组,从而可以有效的处理多行多列的数据。

例子:根据部门号输出该部门的所有雇员名及其工资:

declare 
type emp_table_type is table of emp%rowtype
index by binary_integer;
emp_table emp_table_type;
begin
select * bulk collect into emp_table from emp where deptno=&dno;
for i in 1..emp_table.count loop
dbms_output.put_line('雇员名: '||emp_table(i).ename||',工资: '||emp_table(i).sal);
end loop;
end;
/

anonymous block completed
雇员名: ALLEN,工资: 1600
雇员名: WARD,工资: 1250
雇员名: MARTIN,工资: 1250
雇员名: BLAKE,工资: 2850
雇员名: TURNER,工资: 1500
雇员名: JAMES,工资: 950


-------------------------------------------

作者:赵杰迪

-------------------------------------------

原文地址:https://www.cnblogs.com/zhaojiedi1992/p/oracle11g_sql_0018.html