sql >> Database teknologi >  >> RDS >> Mysql

Hvorfor virker dette valg til opdateringseksempel?

Jeg synes, at den forventede adfærd er lidt ude. Før db_slow commits, er alle rækker i tabellen låst. Efter det er forpligtet, er der to rækker. db_fast ophæves, når db_slow commits. Derfor er adfærden:

  1. db_slow:vælg række 1 og lås den
  2. db_slow:se, at det kun er 1 række, og vent
  3. db_fast:prøv at vælge række 1, se at den er låst, vent
  4. db_slow:indsæt række med '2'
  5. db_slow:begå
  6. db_fast:ophævet og læser 2 rækker
  7. db_fast:gør ikke noget
  8. Ender med foo:1, 2



  1. (Dansk) Sådan bruger du Oracle Database 19c Pre-Built Developer VM

  2. Sammenkæd/flet matrixværdier under gruppering/aggregering

  3. kopiere data fra en mysql-database til en anden mysql-database med java

  4. Zip ved hjælp af Oracle Stored Procedure