Откат миграции не работает должным образом в Phalcon 2.0.9

У меня есть база данных MySQL с некоторыми данными в производственной среде. Моя первая миграция:

class SampleMigration_101 extends Migration {
    public function up() {
        self::$_connection->execute("ALTER TABLE `phalcon`.`sample` DROP INDEX `login`;");
    }
    public function down() {
        self::$_connection->execute("ALTER TABLE `phalcon`.`sample` ADD INDEX `login` (`login`)");
    }
}

Затем я создаю другую миграцию для той же таблицы с чем-то вроде этого:

class SampleMigration_102 extends Migration {
    public function up() {
        self::$_connection->execute("ALTER TABLE `phalcon`.`sample` ADD INDEX `login` (`login`)");
    }
    public function down() {
        self::$_connection->execute("ALTER TABLE `phalcon`.`sample` DROP INDEX `login`;");
    }
}

Но если я захочу вернуться к 101 (> запуск миграции phalcon --version=1.0.1), я потеряю пример таблицы.

  • Почему мне нужно всегда вызывать морфинговую функцию?
  • Почему таблица удаляется, если у меня нет функции морфинга?
  • Почему каждая миграция должна иметь много информации?

0 ответов

Другие вопросы по тегам