尽管迁移回滚很简单,但它可能会导致生产数据库的灾难。
我确信在我的情况下它只会回滚最后一个迁移文件,但是我不能仔细检查这个事实吗?
是否有一个命令可以告诉我在运行migrate时会回滚哪些迁移文件:rollback?
答案 0 :(得分:2)
没有这样的命令,但你可以create your own command(这真的是一个非常简单的任务,需要花费5分钟)并对迁移表使用简单查询,例如:
public function handle()
{
$lastMigration = \DB::table('migrations')->orderBy('batch', 'DESC')->first();
$lastBatch = $lastMigration->batch; // last batch ID
$migrations = \DB::table('migrations')->where('batch', $lastBatch);
foreach ($migrations as $migration) {
$this->info($migration->migration); // output current migration name to cli
}
}
答案 1 :(得分:2)
你可以查看批量'数据库中迁移表的批处理列中的数字。最新一批迁移将被回滚。