Создание миграции - PNixx/Boot GitHub Wiki
Создание миграции
Открываем в консоли корневую директорию приложения. Для создания миграции выполняем следующий запрос:
php console/create/migrate.php [operation] [params]
Операции (operation)
Создание таблицы
Операция: create_table
php console/create/migrate.php create_table_[table_name] [column:type:is_null:default] [etc.]
Поля id, data будут созданы автоматически, если они не были указаны в запросе. Пример запроса:
php console/create/migrate.php create_table_user login:string:false password:string:false role:int:false:1
Дополнительные значения:
:PKEY=[column]
- первичные ключи для указанных полей (через запятую). Если указан первичный ключ, отличный от id
, то колонка id
автоматически создана не будет.
:UKEY=[column]
- уникальные значения полей (через запятую)
Удаление таблицы
Операция: drop_table
php console/create/migrate.php drop_table_[table_name]
Добавление колонки
Операция: alter_table
php console/create/migrate.php alter_table_[table_name] [params]
Параметры:
column_user=user_id
- переименование колонки из column_user
в user_id
+column:type
- добавление колонки column
с типом type
Пример запроса:
php console/create/migrate.php alter_table_user login=email +password:varchar\(255\)
Создание индекса
Операция: create_index
php console/create/migrate.php create_index_[table_name] [column] [column1,column2]
При такой миграции будет создано два индекса с полями: column и [column1, column2]
Пример запроса:
php console/create/migrate.php create_index_user email tag_id,artist_id
SQL миграция
Операция: sql
php console/create/migrate.php sql [sql_query_up] [sql_query_down]
Параметры:
sql_query_up
- выполняется при запуске migrate (не обязательный)
sql_query_down
- выполняется при запуске rollback (не обязательный)
Пример запроса:
php console/create/migrate.php sql "ALTER TABLE user_account ADD CONSTRAINT \"ukey_user_id\" UNIQUE (\"user_id\");"
p.s.: не забываем экранировать кавычки в запросах