В этой статье мы рассмотрим различные методы и примеры выполнения миграции в CodeIgniter 3. CodeIgniter — это мощная PHP-инфраструктура, обеспечивающая встроенную поддержку миграции баз данных, позволяющая разработчикам легко управлять изменениями схемы базы данных и управлять их версиями. Мы рассмотрим несколько способов выполнения миграции, включая использование интерфейса командной строки (CLI) и программно с помощью кода.
- Использование интерфейса командной строки (CLI):
CodeIgniter 3 предоставляет удобный инструмент CLI для выполнения миграции. Чтобы запустить миграцию с помощью CLI, откройте командную строку/терминал и перейдите в корневой каталог вашего проекта CodeIgniter. Выполните следующую команду:
php index.php migrate
При этом будут запущены все ожидающие миграции и соответствующим образом обновлена схема базы данных.
- Создание новой миграции:
Чтобы создать новую миграцию, вы можете использовать следующую команду CLI:
php index.php migrate create migration_name
Замените migration_name
на описательное имя вашей миграции. В результате будет создан новый файл миграции в каталоге application/migrations
с префиксом временной метки.
- Обновление схемы базы данных:
Миграция позволяет вносить изменения в схему базы данных. Например, вы можете добавлять новые таблицы, изменять существующие таблицы или добавлять/удалять столбцы. Вот пример миграции, при которой добавляется новая таблица:
defined('BASEPATH') OR exit('No direct script access allowed');
class Migration_Add_products_table extends CI_Migration {
public function up()
{
$this->dbforge->add_field('id');
$this->dbforge->add_field([
'name' => ['type' => 'VARCHAR', 'constraint' => 100],
'price' => ['type' => 'DECIMAL', 'constraint' => '10,2'],
]);
$this->dbforge->create_table('products');
}
public function down()
{
$this->dbforge->drop_table('products');
}
}
- Выполнение определенных миграций.
Если вы хотите запустить конкретную миграцию вместо всех ожидающих миграций, вы можете использовать следующую команду CLI:
php index.php migrate version migration_number
Замените migration_number
меткой времени или номером версии миграции, которую вы хотите выполнить.
- Откат миграции:
CodeIgniter 3 позволяет откатывать миграцию на случай, если вам понадобится отменить какие-либо изменения. Чтобы откатить последний пакет миграции, используйте следующую команду CLI:
php index.php migrate rollback
Вы также можете откатить определенную миграцию, используя ее номер версии.
В этой статье мы рассмотрели несколько методов и примеров выполнения миграции в CodeIgniter 3. Мы рассмотрели использование инструмента CLI, создание новых миграций, обновление схем баз данных, выполнение определенных миграций и откат изменений. Функция миграции CodeIgniter обеспечивает удобный и организованный способ управления изменениями схемы базы данных в ваших приложениях.