stored procedures - stored - Cómo desbloquear una fila si uso la cláusula FOR UPDATE
stored procedure oracle ejemplos (1)
Las filas actualizadas se desbloquearán después de una confirmación.
En el procedimiento, si usamos la cláusula FOR UPDATE
, bloqueará una fila en particular y permitirá que solo un cliente actualice mientras que otro cliente solo puede obtener datos en la misma fila en ese momento.
Mi pregunta es cuándo desbloqueará la fila, ¿qué deberíamos hacer para desbloquear la fila mientras escribo el procedimiento? Toma este ejemplo aquí. Estoy usando la cláusula FOR UPDATE
para client_count, cuando desbloquee esa fila en particular en este procedimiento.
create or replace PROCEDURE newprocedur(inMerid IN VARCHAR2,outCount OUT NUMBER) AS
CURSOR c1 IS
select CLIENT_COUNT
from OP_TMER_CONF_PARENT
where MER_ID = inMerid
FOR UPDATE OF CLIENT_COUNT;
BEGIN
Open c1;
loop
fetch c1 into outCount;
exit when c1%NOTFOUND;
outCount:=outCount+1;
update OP_TMER_CONF_PARENT
set CLIENT_COUNT = outCount
where current of c1;
end loop;
close c1;
END;