sql >> Databasteknik >  >> RDS >> Oracle

Hur kan jag låsa en enda rad i Oracle SQL

Du kan låsa posten som beskrivs i andra svar, men du kommer inte se något undantag medan du uppdaterar den här raden.

UPDATE uttalandet väntar tills låset släpps , dvs sessionen med SELECT ... FOR UPDATE begår. Efter det kommer UPPDATERING att utföras.

Det enda undantaget du kan hantera är DEADLOCK, dvs.

Session1   SELECT FOR UPDATE record A
Session2   SELECT FOR UPDATE record B
Session1   UPDATE record B  --- wait as record locked
Session2   UPDATE record A  --- deadlock as 1 is waiting on 2 and 2 waiting on 1


  1. Gruppera några resultat sql-fält i ett gemensamt objekt

  2. Hur kan jag starta PostgreSQL-servern på Mac OS X?

  3. brew install mysql, fel vid försök att stoppa servern

  4. Variabel som innehåller antalet rader som påverkats av tidigare DELETE? (i en funktion)