Oracle изменяет значение курсора во время цикла - PullRequest
0 голосов
/ 13 декабря 2018

Следующий код компилируется и работает:

begin

  for l in (select 1 as v
              from dual
            union
            select 2 as v
              from dual
            union
            select 3 as v
              from dual) loop

              if l.v = 3 then
                l.v := 3.14; -- > modify the cursor value ?!
              end if;

              dbms_output.put_line('=> ' || l.v);

  end loop;

end;

=> 1
=> 2
=> 3,14

Это хорошая практикасделать это в цикле, например, изменить значение курсора?

Каковы последствия этого?Если я объявил select в курсоре, изменяет ли он значение, когда я снова читаю курсор?

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...