Транзакция в базе данных представляет собой логическую единицу работы, состоящую из последовательности операций, которые выполняются как единое целое. Транзакции обеспечивают целостность данных даже в случае системных сбоев.

Содержание

Транзакция в базе данных представляет собой логическую единицу работы, состоящую из последовательности операций, которые выполняются как единое целое. Транзакции обеспечивают целостность данных даже в случае системных сбоев.

Основные свойства транзакций (ACID)

  • Атомарность (Atomicity) - все операции выполняются или ни одна
  • Согласованность (Consistency) - данные остаются в допустимом состоянии
  • Изолированность (Isolation) - параллельные транзакции не мешают друг другу
  • Долговечность (Durability) - результаты сохраняются после завершения

Типы транзакций в базах данных

ТипОписание
ЯвныеНачинаются и завершаются вручную
НеявныеАвтоматически создаются СУБД
РаспределенныеЗатрагивают несколько баз данных
ВложенныеТранзакции внутри других транзакций

Жизненный цикл транзакции

  1. Начало транзакции (BEGIN)
  2. Выполнение операций (INSERT, UPDATE, DELETE)
  3. Фиксация изменений (COMMIT) при успехе
  4. Откат изменений (ROLLBACK) при ошибке
  5. Завершение транзакции

Примеры использования транзакций

  • Банковские переводы между счетами
  • Оформление заказов в интернет-магазинах
  • Бронирование билетов
  • Обновление каталогов продукции

Уровни изоляции транзакций

СУБД поддерживают разные уровни изоляции: Read Uncommitted, Read Committed, Repeatable Read и Serializable. Выбор уровня влияет на производительность и согласованность данных при параллельном выполнении транзакций.

Другие статьи

Штраф по почте не пришел: что делать и прочее