Комплексное руководство по миграции в CodeIgniter 3: методы и примеры

В этой статье мы рассмотрим различные методы и примеры выполнения миграции в CodeIgniter 3. CodeIgniter — это мощная PHP-инфраструктура, обеспечивающая встроенную поддержку миграции баз данных, позволяющая разработчикам легко управлять изменениями схемы базы данных и управлять их версиями. Мы рассмотрим несколько способов выполнения миграции, включая использование интерфейса командной строки (CLI) и программно с помощью кода.

  1. Использование интерфейса командной строки (CLI):
    CodeIgniter 3 предоставляет удобный инструмент CLI для выполнения миграции. Чтобы запустить миграцию с помощью CLI, откройте командную строку/терминал и перейдите в корневой каталог вашего проекта CodeIgniter. Выполните следующую команду:
php index.php migrate

При этом будут запущены все ожидающие миграции и соответствующим образом обновлена ​​схема базы данных.

  1. Создание новой миграции:
    Чтобы создать новую миграцию, вы можете использовать следующую команду CLI:
php index.php migrate create migration_name

Замените migration_nameна описательное имя вашей миграции. В результате будет создан новый файл миграции в каталоге application/migrationsс префиксом временной метки.

  1. Обновление схемы базы данных:
    Миграция позволяет вносить изменения в схему базы данных. Например, вы можете добавлять новые таблицы, изменять существующие таблицы или добавлять/удалять столбцы. Вот пример миграции, при которой добавляется новая таблица:
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');
    }
}
  1. Выполнение определенных миграций.
    Если вы хотите запустить конкретную миграцию вместо всех ожидающих миграций, вы можете использовать следующую команду CLI:
php index.php migrate version migration_number

Замените migration_numberметкой времени или номером версии миграции, которую вы хотите выполнить.

  1. Откат миграции:
    CodeIgniter 3 позволяет откатывать миграцию на случай, если вам понадобится отменить какие-либо изменения. Чтобы откатить последний пакет миграции, используйте следующую команду CLI:
php index.php migrate rollback

Вы также можете откатить определенную миграцию, используя ее номер версии.

В этой статье мы рассмотрели несколько методов и примеров выполнения миграции в CodeIgniter 3. Мы рассмотрели использование инструмента CLI, создание новых миграций, обновление схем баз данных, выполнение определенных миграций и откат изменений. Функция миграции CodeIgniter обеспечивает удобный и организованный способ управления изменениями схемы базы данных в ваших приложениях.