我需要使用批量收集打印所有列数据我需要如何实现它
我的雇员表为:id,name,salary
此 id、name、salary 需要打印为输出
下面是我的 PLSQL 代码
declare
type v_nest is table of emp%rowtype;
v_rd v_nest := v_nest();
begin
select * bulk collect into v_rd from emp;
for i in v_rd.first..v_rd.last
loop
dbms_output.put_line(v_rd(i)); // Why this does not work
end loop;
end;
dbms_output
需要一个标量 - 您不能向它传递具有多列的记录,这就是集合的每个元素v_rd
(类型为 的记录/对象emp%rowtype
)。因此,只需将列名称添加到记录引用中,即可按照您希望的方式将其分解为您自己选择的字符串:这是一个有用的学术练习,但当然所有这些都是完全没有必要的。只需通过直接查询,您就可以以更可用的格式获得相同的结果,而无需任何 PL/SQL: