php think migrate,thinkphp5 migrate数据库迁移工具

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

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

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

composer require topthink/think-migration

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

06f3b5261f0aec56c45d67b0af5150c0.png

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

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

重新composer update即可

83fc00437b6a235de07b2b93ded57768.png

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

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

use think\migration\Migrator;

use think\migration\db\Column;

class CreateUserTable extends Migrator

{

/**

* 建立用户表

*/

public function up(){

$table = $this->table('user');

$table->addColumn('username' , 'string' , ['limit' => 30])

->addColumn('passwork' , 'string' , ['limit' => 32])

->addColumn('email' , 'string' , ['limit' => 25])

->addColumn('lastlogin_ip' , 'string' , ['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表建立成功

d646cb1bd42d9504dd75a3c26b8172cd.png

非常的方便

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值