@alekskondr
php, javascript, yii2, drupal, MQL

Как сделать транзакции в Yii2? С чего начать?

Как сделать транзакции в Yii2? С чего начать?
Подскажите как таблицы сделать?
Что в контроллере прописать и с вьюхами как?
  • Вопрос задан
  • 1510 просмотров
Решения вопроса 2
@maxyc_webber
Web-программист
в active record нет транзакций. только в DAO
Ответ написан
Для начала нужно понять что такое транзакция, и важно понимать что само понятие транзакции относится к базе данных с которой вы работаете, а не к фреймворку, так как фреймворк предоставляет инструменты для работы с транзакциями. К примеру тип таблиц MyISAM в MySql не поддерживает транзакции, и сам MySql не поддерживает транзакции до какой то мохнатой версии.
Сами же транзакции служат для того что бы исключить частичную запись в базу данных, рассмотрим ситуацию когда нужно записать связанные данные в несколько таблиц,возможна ситуация что в ходе записи данных может произойти ошибка, которая приведет к тому что часть данных будет записана а часть данных нет, так вот транзакции служат для того что бы исключить такие ситуации. На пальцах это работает так:
1. Открываете транзакцию
2. Производите запись в базу
3. Если все ок, проверяете есть ли активная транзакция, если есть то активируете ее (commit)
4. Если не все ок, то откатываете транзакцию (rollback)

Далее если транзакции относятся к бд, то я не понимаю откуда вывод что в AR нет транзакций, сам использую транзакции в связке с AR и всё отлично работает. Работаю с Yii, возможно во второй части что либо иначе, знающие могут поправить.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@PapaStifflera
Родился, вырос...
Начинать надо всегда прочтения документации. До полного просветления.
Как вы сделали, что именно не получилось?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы