23. Транзакции. Понятие транзакции. Свойства транзакции
def Транзакция - последовательность действий с базой данных, в которой либо все действия выполняются успешно, либо не выполняется ни одно из них.
По факту это преобразование бд из одного логически-согласованного состояния в другое логически-согласованного состояния, подразумевая, что в промежутке бд могла находиться в логически-несогласованном состоянии
Свойства транзакций
Выполнение всех четырёх свойств одновременно гарантирует надёжность операций
- Атомарность - Транзакция неделима, т.е. либо выполняются все её действия, либо ни одного 
- Согласованность - Транзакция переводит одно согласованное состояние бд в другое без соблюдения обязательной согласованности в промежуточных точках 
- Изоляция - Если запущено несколько конкурирующих транзакций, то любое обновление состояния бд, выполненное одной транзакцией, скрыто от других до её завершения 
- Долговечность - Когда транзакция завершена, её результаты обновления сохраняются, даже если в следующий момент произовдёт сбой