微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

thinkphp5 migrate数据库迁移工具

tp5相对与tp3.2有很大的不同

migrate是其中一点,通过migrate程序员可以在PHP代码中创建数据库修改回滚等操作

首先下载migrate扩展,命令行到当前项目目录下执行

rush:bash;"> composer require topthink/think-migration

通过使用PHP think命令可以查看migrate是否成功下载

使用migrate:create migrate文件名(首字母大写的驼峰法),在database下生成migrate文件

有可能建立失败提示没有什么方法一般是composer获取的tp版本过低,考虑修改composer.json文件里的migrate的版本为1.*或^1.0

重新composer update即可

在application 下的 database.PHP 里配置好数据库

以下是其中一份migrate文件内容(创建完后有一个方法change(),删除它)

class CreateUserTable extends Migrator
{

/**

  • 建立用户表
    */
    public function up(){
    $table = $this->table('user');
    $table->addColumn('username','string',['limit' => 30])
    ->addColumn('passwork',['limit' => 32])
    ->addColumn('email',['limit' => 25])
    ->addColumn('lastlogin_ip',['limit' => 15])
    ->addTimestamps('create_time','lastlogin_time')
    ->addColumn('status','integer',['limit' => 1,'default' => 1])
    ->setId('user_id')
    ->save();
    }

/**

  • 提供回滚的删除用户方法
    */
    public function down(){
    $this->dropTable('user');
    }
    }

以上的一些方法 ,官方给予的文档我没看到在哪,网上我看的是小腾讲解的

使用migrate:run会执行所有的migrate的up方法

通过migrate:rollback可以回滚上一条执行的migrate文件(带 -t 0 参数回滚全部)

通过migrate:status可以查看当前migrate执行的情况

执行run方法后,user表建立成功

非常的方便

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐