• ThinkPhp5 数据迁移(think-migration)


    在thinkphp5中提供了数据迁移工具(think-migration),它是机遇phinx开发(文档地址:http://docs.phinx.org/en/latest/)

    一:配置think-migration

    在commond.php 中添加

    <?php
    return [
        "think\migration\command\migrate\Create",
        "think\migration\command\migrate\Run",
        "think\migration\command\migrate\Rollback",
        "think\migration\command\migrate\Status",
        "think\migration\command\seed\Create",
        "think\migration\command\seed\Run",
    ];
    ?>

    注意由于think-migration存放在thinkphp/vendor中 所以在think中需要将vendor加入auoload

    require __DIR__.'/../thinkphp/vendor/autoload.php';

    二:命令行运行

     在命令行输入php think 可以看见

    migrate:数据库迁移工具 seed:数据库填充工具

    主要讨论migrate:

      migrate:create : 创建一个新的数据迁移类,php think migrate:create <file>,文件名须采用驼峰命名法

      forexample:php think migrate:create ScProductImage 文件会在制定目录下生成一个php文件

    ***********************************************************

    migrate:run : 完成数据迁移工作 php think migrate:run

    ***********************************************************

    migrate:status:查看migrate工作状态 php think migrate:status

    ***********************************************************************************************

      migrate:rollback : 回滚数据到指定的一个数据迁移版本 php think migrate:rollback -t <timeline>

      <timeline> 就是我们上图上面红框表示的值

    三:migrate文件编写

         在migrate中有三个方法

         up:在migrate:run时执行(前提是文件中不存在change方法)

        down:在migrate:rollback时执行(前提是文件中不存在change方法)

        change:migrate:run 和migrate:rollback时执行 (如果存在该方法 则不会去执行up 与down)

  • 相关阅读:
    比较两个树是否相同
    将一个字符串转换成一个整数
    求数组中第一个重复数字
    Redis之哨兵机制(sentinel)——配置详解及原理介绍
    ==和equals的区别
    求一个数的立方根
    检测应用版本
    【转】UITableViewCell自适应高度 UILabel自适应高度和自动换行
    iOS7中Cell高度 Label高度自适应
    MarsEdit 快速插入代码
  • 原文地址:https://www.cnblogs.com/panyangfeng/p/6604107.html
Copyright © 2020-2023  润新知