Встречается на собеседованиях • сегодня

Какие знаешь уровни изоляции в SQL

В SQL стандарт определяет 4 уровня изоляции транзакций:

  1. Read Uncommitted - самый низкий уровень. Транзакции видят незафиксированные изменения других транзакций (грязное чтение). Пример:
sql
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
  1. Read Committed - транзакция видит только зафиксированные данные. Может возникнуть проблема неповторяющегося чтения.

  2. Repeatable Read - гарантирует, что данные, прочитанные в рамках транзакции, не изменятся. Но возможна проблема фантомного чтения.

  3. Serializable - самый строгий уровень. Транзакции выполняются так, как будто они выполняются последовательно.

В PostgreSQL и Oracle реализованы все 4 уровня, в MySQL InnoDB - все кроме Read Uncommitted (хотя технически поддерживается). Уровень по умолчанию различается: в PostgreSQL - Read Committed, в MySQL - Repeatable Read.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы