Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Oracle (PL/SQL):UPDATE RETURNING é concorrente?


Sim, pelo menos até certo ponto. O primeiro usuário a emitir essa atualização obtém um bloqueio na linha. Portanto, nenhum outro usuário pode emitir com êxito essa mesma instrução até que o usuário número uno confirme (ou reverta). Assim, a exclusividade é garantida.

Obviamente, a cavilação é em relação à simultaneidade. Seu acesso à linha é serializado, portanto, não há como dois usuários obterem um novo PRIKEY simultaneamente. Isso não é necessariamente um problema. Depende de quantos usuários você tem criando novos itens e com que frequência eles fazem isso. Um usuário descascando números na mesma sessão não notará nada.