Oracle
 sql >> Base de données >  >> RDS >> Oracle

Oracle (PL/SQL) :UPDATE RETURNING est-il simultané ?

Oui, du moins jusqu'à un certain point. Le premier utilisateur à publier cette mise à jour obtient un verrou sur la ligne. Ainsi, aucun autre utilisateur ne peut émettre avec succès la même instruction jusqu'à ce que l'utilisateur numero uno s'engage (ou annule). L'unicité est donc garantie.

De toute évidence, la querelle porte sur la concurrence. Votre accès à la ligne est sérialisé, il n'y a donc aucun moyen pour deux utilisateurs d'obtenir un nouveau PRIKEY simultanément. Ce n'est pas nécessairement un problème. Cela dépend du nombre d'utilisateurs qui créent de nouveaux éléments et de la fréquence à laquelle ils le font. Un utilisateur décollant des numéros dans la même session ne remarquera rien.