История изменений
Исправление firkax, (текущая версия) :
Я знаю что такое транзакции и зачем они нужны, не надо мне расписывать.
Речь как раз о том, что описанный тобой случай - редкость. Причём даже если в проекте вообще присутствуют такие вещи - это не значит, что ВСЕ таблицы критичны к соблюдению этого порядка.
Подавляющее большинство установок mysql - это штуки типа lamp, поставленные либо для личных блогов, либо для развлекательных лент, либо для интернет магазинов с ручной обработкой заказов (т.е. база на сайте это витрина + форма отправки письма менеджеру). Никакая транзакционность ни в одном из этих случаев нафиг не нужна. Изредка кто-то из них пытается финансовые дела тоже вести и автоматизировать с помощью той же базы, там уже могут пригодиться транзакции (но опять же, не для всей базы а только для финансово-критичных таблиц).
Заметно меньше установок - крупные сайты/сервисы. С одной стороны, кажется, им всё важнее, а с другой - ну что им будет если какой-то юзер потеряет пусть даже целиком свой аккаунт? Да ничего, в крайнем случае придётся сказать «ой, у нас тут технический сбой, попробуем вернуть ваши данные». Если сервис платный - вернуть месячную копеечную оплату в качестве компенсации. И всё.
Важное начинается там, где в таблицах хранится информация, критичная для работы непосредственно бизнеса. Например, чтобы предприятие не закрыли на какую-то проверку по инициативе налоговой или ещё какого гос. органа. Или, например, контроль выполнения какого-то крупного прибыльного заказа, выполняемого по индивидуальному договору (не оферте с сайта). Но такое обычно хранят не в mysql. Да и просто по количеству баз - их меньше чем веба.
Исходная версия firkax, :
Я знаю что такое транзакции и зачем они нужны, не надо мне расписывать.
Речь как раз о том, что описанный тобой случай - редкость. Причём даже если в проекте вообще присутствуют такие вещи - это не значит, что ВСЕ таблицы критичны к соблюдению этого порядка.
Подавляющее большинство установок mysql - это штуки типа lamp, поставленные либо для личных блогов, либо для развлекательных лент, либо для интернет магазинов с ручной обработкой заказов (т.е. база на сайте это витрина + форма отправки письма менеджеру). Никакая транзакционность ни в одном из этих случаев нафиг не нужна. Изредка кто-то из них пытается финансовые дела тоже вести и автоматизировать с помощью той же базы, там уже могут пригодиться транзакции (но опять же, не для всей базы а только для финансово-критичных таблиц).
Заметно меньше установок - крупные сайты/сервисы. С одной стороны, кажется, им всё важнее, а с другой - ну что им будет если какой-то юзер потеряет пусть даже целиком свой аккаунт? Да ничего, в крайнем случае придётся сказать «ой, у нас тут технический сбой, попробуем вернуть ваши данные». Если сервис платный - вернуть месячную копеечную оплату в качестве компенсации. И всё.
Важное начинается там, где в таблицах хранится информация, критичная для работы непосредственно бизнеса. Например, чтобы предприятие не закрыли на какую-то проверку по инициативе налоговой или ещё какого гос. органа. Или, например, контроль выполнения какого-то крупного прибыльного заказа, выполняемого по индивидуальному договору (не оферте с сайта). Но такое обычно хранят не в mysql.