День #21/21. Отчет за 05.03.2023 1. Не сегодня 2. Не польз | NurBlog: С нуля до джуна
День #21/21. Отчет за 05.03.2023
1. Не сегодня
2. Не пользовался телефоном ~30 минут
3. Повторил тему транзакции
Транзакция - это одно из фундаментальных понятий в базах данных. Транзакция - это атомарный набор запросов к базе данных. То есть запрос будет выполнен полностью или завершится полным сбоем.
Расмотрим такой случай, User1 хочет перевести 200 долларов к User2. Сперва снимаем 200$ со счета User1, потом прибавляем 200$ к счету User2. Вроде нет никаких проблем. Но, что если после как сняли деньги с User1, база упала, и эти деьги не дошли до User2. Было бы обидно, если бы деньги со счета User1 списались, но на счет User2 не поступили. И в этот момент к помощи приходит транзакции. И благодаря объединению запросов в транзакцию при возникновении ошибки зачисления мы откатываем и операцию списания. Деньги снова вернулись на счет 1!
4. Лег спать после 01:00