Обмен технологиями

Использование транзакций MySQL

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Функции

Основные атрибуты транзакций ACID:

Характеристики ACID транзакций базы данных относятся к четырем основным атрибутам, которые гарантируют надежность и правильность базы данных при выполнении транзакционных операций. КИСЛОТА - этоатомарность(Атомарность)、последовательность(Последовательность),Изоляция(Изоляция),упорство (Долговечность) аббревиатура. Ниже приводится подробное объяснение каждой функции:

Атомность:

Атомарность означает, что транзакция либо выполняется полностью, либо не выполняется вообще. В ходе выполнения транзакции, если произойдет ошибка или сбой, часть выполненных операций будет откатана (отменена), а вся транзакция будет работать так, как будто ее никогда и не было.
Например, при банковском переводе либо оба этапа перевода (списание средств с одного счета и зачисление денег на другой) выполняются успешно, либо ни один из них не выполняется. Не может быть ситуации, когда снимаются только деньги, а депозит не вносится.
Последовательность:

Согласованность гарантирует, что база данных всегда находится в согласованном состоянии до и после выполнения транзакции. База данных должна удовлетворять всем бизнес-правилам и ограничениям в начале и конце транзакции.
Например, при банковском переводе общая сумма счета должна оставаться одинаковой до и после транзакции. Если сумма списывается с одного счета, соответствующая сумма должна быть добавлена ​​к другому счету, сохраняя единообразие общей суммы во всей системе.
Изоляция:

Изоляция гарантирует, что выполнение нескольких одновременных транзакций не будет мешать друг другу. Каждая транзакция должна выполняться независимо от операций других транзакций. Уровни изоляции между транзакциями могут быть достигнуты с помощью различных механизмов блокировки или управления многоверсионным параллелизмом.
Например, в двух одновременных транзакциях банковского перевода, пока одна транзакция выполняется, другая транзакция не должна видеть свое незафиксированное промежуточное состояние.
Долговечность:

Долговечность гарантирует, что после совершения транзакции ее результаты будут постоянно храниться в базе данных, и даже в случае сбоя системы (например, отключения электроэнергии или сбоя) отправленные результаты транзакции не будут потеряны.
Например, при банковском переводе, как только транзакция перевода будет успешно отправлена, даже если впоследствии система выйдет из строя, результаты перевода не будут потеряны, и обновления баланса счета будут сохранены.
Эти функции совместно обеспечивают надежность и согласованность базы данных при обработке транзакций, обеспечивая целостность и точность данных.

JDBC использует транзакции

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

Вставьте сюда описание изображения

Вставьте сюда описание изображения

Согласованность гарантируется посредством транзакций
Вставьте сюда описание изображения