phalcon/migrations

使用Phalcon框架运行和生成数据库迁移

v3.0.1 2023-05-03 09:02 UTC

README

Discord Packagist Version PHP from Packagist codecov Packagist

通过迁移生成或迁移数据库更改。
Phalcon迁移的主要思想是自动检测更改和形状,而无需编写手动迁移。

完整文档

Phalcon文档 - 数据库迁移

要求

  • PHP >= 7.4
  • Phalcon >= 5.0.0
  • PHP ext-posix (Linux)

通过Composer安装

composer require --dev phalcon/migrations

快速开始

快速开始所需

  • 配置文件(例如:migrations.php)在项目的根目录下(您也可以在CLI环境中作为参数传递它们)
  • 创建数据库表结构
  • 执行生成迁移的命令

之后,您可以在另一个环境中执行这些迁移(运行),以创建相同的数据库结构。

创建配置文件

配置文件名可以是您想要的任何名字。

<?php

use Phalcon\Config;

return new Config([
    'database' => [
        'adapter' => 'mysql',
        'host' => '127.0.0.1',
        'username' => 'root',
        'password' => '',
        'dbname' => 'db-name',
        'charset' => 'utf8',
    ],
    'application' => [
        'logInDb' => true,
        'no-auto-increment' => true,
        'skip-ref-schema' => true,
        'skip-foreign-checks' => true,
        'migrationsDir' => 'db/migrations',
        'migrationsTsBased' => true, // true - Use TIMESTAMP as version name, false - use versions
        'exportDataFromTables' => [
            // Tables names
            // Attention! It will export data every new migration
        ],
    ],
]);

生成迁移

vendor/bin/phalcon-migrations generate

或者如果您已经有了可用的配置文件。

vendor/bin/phalcon-migrations generate --config=migrations.php

运行迁移

vendor/bin/phalcon-migrations run

或者如果您已经有了可用的配置文件。

vendor/bin/phalcon-migrations run --config=migrations.php

列出现有迁移

vendor/bin/phalcon-migrations list