数据库变更脚本(Migration)

Biz Framework 使用 phpmig 作为数据库变更脚本的引擎,并约定项目根目录下的 migrations 目录为默认的 migration 脚本所在目录。

基本使用

查看所有命令:

  1. bin/phpmig

生成一个Migration脚本类:

  1. bin/phpmig generate YourClassName

参数 YourClassName 为本次 Migration 脚本类的类名,请根据实际情况取名,表明意图。运行此命令后,会在 migrations 目录下,生成 VERSIONID_YourClassName.php 文件:

  1. <?php
  2. use Phpmig\Migration\Migration;
  3. class YourClassName extends Migration
  4. {
  5. /**
  6. * Do the migration
  7. */
  8. public function up()
  9. {
  10. $container = $this->getContainer();
  11. $sql = "...";
  12. $container['db']->exec($sql);
  13. }
  14. /**
  15. * Undo the migration
  16. */
  17. public function down()
  18. {
  19. $container = $this->getContainer();
  20. $sql = "...";
  21. $container['db']->exec($sql);
  22. }
  23. }

up() 函数中,用于编写本次数据库变更的SQL。down() 函数中,用于编写撤销本次数据库变更的SQL。

运行所有未执行过的Migration脚本:

  1. bin/phpmig migrate

重新执行某个具体版本的Migration脚本:

  1. bin/phpming redo VERSION_NO

回退最后执行过的一个Migration脚本:

  1. bin/phpmig rollback