hipay/php-database-migration

rake 和 MyBatis SQL 迁移工具

v4.1.0 2016-02-26 16:25 UTC

README

这是一个基于 symfony 控制台的完整独立 PHP 工具,灵感来自 rails 数据库迁移工具和 MyBatis。它合并了两者的功能,并设计得尽可能灵活。

将工具安装到项目中

只需将其添加到 composer.json 中(不要忘记指定您的 bin 目录)警告:所有迁移命令必须在您的根目录下执行,例如 bin/migrate migrate:command...

{
    "name": "jdoe/testproject",
    "authors": [
        {
            "name": "Jhon DOE",
            "email": "jdoe@gmail.com"
        }
    ],
    "require": {
        "php-database-migration/php-database-migration" :"3.4.*"
    },
    "config": {
        "bin-dir": "bin"
    }
}

添加环境

在玩 SQL 迁移之前,首先需要添加一个环境,让我们添加开发环境。

alt tag

初始化

添加环境后,您需要初始化它(在正确的数据库上创建变更日志表)

alt tag

创建迁移

现在是时候创建我们的第一个迁移文件了。

alt tag

迁移文件如下所示

--// add table users
-- Migration SQL that makes the change goes here.
create table users (id integer, name text);
-- @UNDO
-- SQL to undo the change goes here.
drop table users;

上升和下降

现在您可以上升所有挂起的迁移。如果您决定下降迁移,则最后一个迁移将单独下降,以防止错误。在运行实际的 SQL 脚本之前,您将需要确认数据库降级。 alt tag

对于开发目的,也可以单独上升一个迁移,而不必担心其他的。

alt tag

下降也是同样的道理。

alt tag