安装migrate拓展
composer require topthink/think-migration
根目录下命令窗口执行
创建migrate
php think migrate:create migrate名称
创建表
默认生成文件只有change函数,如果不打算rollback可以把编辑代码写进该函数,这里预备使用rollback,所以把change注释掉,只使用up和down
public function up(){
$table = $this->table('goods_list');
$table->addColumn('name', 'string')
->addColumn('price', 'float')
->addColumn('info', 'string')
->addColumn('updated_at', 'string')
->create();
}
表字段编写这里不多说,tp文档也有说,tp6 数据库迁移文档
删除表
这里是操作rollback上方创建的表
public function down(){
$this->table('goods_list')->drop();
}
修改表
已经创建了的表上如何进行增删表字段,必须重新创建一个migrate文件
composer require topthink/think-migration 编辑migrate文件名
public function up(){
$table = $this->table('goods_list');
$table->addColumn('add_name', 'string')
->save();
}
修改表 - rollback
public function down(){
$table = $this->table('goods_list');
$table->removeColumn('add_name')
->save();
}
up方法操作的事务,down操作相反的事务
执行migrate
php think migrate:run
执行rollback
执行一次会取消最近一次的migrate操作,具体操作是你编写的down,编写错误并不能rollback
php think migrate:rollback
深层学习迁移,转向 Phinx文档