pl/sql用for in和for select into循环遍历表

create or replace procedure test_procedure_job

as
v1 varchar2(50);
v2 varchar2(50);
v3 varchar2(50);
begin
   for v1 in
   (select t.id
          from test_table t)
   loop
       select t.username,t.password into v2,v3 from sshtest t where t.id = v1.id;
      
       dbms_output.put_line(v1.id || ',' || v2 || ',' || v3);
    
   end loop;
  
end test_procedure_job;

 

原来,for in 取出来的v1,是一个虚表。里面有一个属性id。

所以在循环里面,不是用v1,而是用v1.id。试了很久,郁闷。

然后,循环里面,用了select into。直接用v2,v3。真神奇。

这里竟然和v1不同。

 

长见识了……

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值