#Session 1 SQL> delete del1; 0 rows deleted. SQL> SQL> insert into del1(n) (select level from dual connect by level < 100); 99 rows created. SQL> var c1 refcursor; SQL> SQL> begin 2 open :c1 for select n from del1 order by n for update skip locked; 3 end; 4 / PL/SQL procedure successfully completed. SQL> SQL> set serveroutput on; SQL> SQL> declare 2 n number; 3 begin 4 fetch :c1 into n; 5 dbms_output.put_line(to_char(n)); 6 end; 7 / 1 PL/SQL procedure successfully completed. #Session 2 SQL> var c1 refcursor; SQL> SQL> begin 2 open :c1 for select n from del1 order by n for update skip locked; 3 end; 4 / PL/SQL procedure successfully completed. SQL> SQL> set serveroutput on; SQL> SQL> declare 2 n number; 3 begin 4 fetch :c1 into n; 5 dbms_output.put_line(to_char(n)); 6 end; 7 / 2 PL/SQL procedure successfully completed. #Session 1 SQL> declare 2 n number; 3 begin 4 fetch :c1 into n; 5 dbms_output.put_line(to_char(n)); 6 end; 7 / 3 PL/SQL procedure successfully completed. #Session 2 SQL> declare 2 n number; 3 begin 4 fetch :c1 into n; 5 dbms_output.put_line(to_char(n)); 6 end; 7 / 4 PL/SQL procedure successfully completed.
пятница, 22 декабря 2017 г.
Select for update skip locked example
Подписаться на:
Сообщения (Atom)