Repaso
English

En el estándar SQL, ¿cuál es el nivel de aislamiento más bajo que evita las lecturas no repetibles?

Opciones

  1. Read Uncommitted
  2. Read Committed
  3. Repeatable Read (Opción correcta)
  4. Serializable

Respuesta

Repeatable Read

Por qué

Una lectura no repetible: dentro de una transacción lees una fila dos veces y obtienes valores distintos, porque otra transacción la cambió e hizo commit entre medias.

Niveles, del más débil al más fuerte:

  • Read Uncommitted: puede ver datos sin commit (dirty reads).
  • Read Committed: sin dirty reads (por defecto en PostgreSQL).
  • Repeatable Read: además, sin lecturas no repetibles.
  • Serializable: además, sin phantoms (nuevas filas que coinciden y aparecen).

Recuerda

Read Committed < Repeatable Read < Serializable.

Términos clave

Practica esta pregunta en Repaso