yii2 — миграции

В Yii 2 есть механизм миграций. По сути миграции в БД это изменение структуры.
Пример использования:

Создание миграций:

name – параметр принимающий имя миграции

После выполнения команды будет создан класс:

В метод up() содержится код, который должен быть выполнен при накатывании миграции. В методе down() содержится код, который выполнится при откате миграции. Пример миграции:

Данная миграция создаёт две таблицы и два внешних ключа.

Для создания таблицы используется метод createTable() принимающий два обязательных параметра, имя таблицы и масив описывающий свойства полей таблицы.

Для создания внешних ключей используются методы createIndex() для создания индекса, принимающий три параметра: имя индекса, имя таблицы и имя поля. И метод addForeignKey() принимающий семь параметров: имя внешнего ключа, имя таблицы и имя поля к которой добавляется ключ, имя таблицы и имя поля на которые ссылается ключ, стратегии при удалении и обновлении.

Для применения миграций используется команда:

Для применения нескольких миграций используется команда:

где 2 – число применяемых миграций

Для применения определённой версии миграции используется команда:

где 141018_180924 – timestamp миграций

Команда для отката миграции

[step] – количество отменяемых миграций

Для повторного применения миграции применяется команда

[step] – количество повторно применяемых миграций

Просмотр примененных миграций:

[limit] – количество выводимых записей

Просмотр списка новых миграций, которые ещё не были применены:

[limit] – количество выводимых записей

Добавить комментарий