Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Oracle (PL/SQL):Ist UPDATE RETURNING gleichzeitig?

Ja, zumindest bis zu einem gewissen Punkt. Der erste Benutzer, der dieses Update herausgibt, erhält eine Sperre für die Zeile. Daher kann kein anderer Benutzer dieselbe Anweisung erfolgreich ausgeben, bis Benutzer numero uno festschreibt (oder zurücksetzt). So ist die Einzigartigkeit garantiert.

Offensichtlich geht es um die Nebenläufigkeit. Ihr Zugriff auf die Zeile ist serialisiert, sodass zwei Benutzer nicht gleichzeitig einen neuen PRIKEY erhalten können. Dies ist nicht unbedingt ein Problem. Es hängt davon ab, wie viele Benutzer neue Artikel erstellen und wie oft sie dies tun. Ein Benutzer, der in derselben Sitzung Nummern abzieht, wird nichts bemerken.