工匠迁移:laravel 5.3 中的回滚错误

Posted

技术标签:

【中文标题】工匠迁移:laravel 5.3 中的回滚错误【英文标题】:artisan migrate:rollback error in laravel 5.3 【发布时间】:2017-04-18 22:57:11 【问题描述】:

我正在尝试构建一个简单的迁移表,然后尝试在表中添加一列,因此以下是我的迁移文件:

class AddFlagToEmiTable extends Migration

    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    
        Schema::table('epins', function (Blueprint $table) 
            $table->boolean('flag');
        );
    

    /**
     * Reverse the migrations.
     *
     * @return void
     */ 
    public function down()
    
        Schema::table('epins', function (Blueprint $table) 
            //
        );
    

这里我忘了写drop值是:

$table->dropColumn('flag');

现在,在添加此内容并尝试 rollback 并再次尝试执行 php artisan migrate 时,它显示错误,并且即使我在迁移中添加了删除值,它也没有显示输出分别迁移。

我已经尝试过以下操作:

php artisan optimize
php artisan clear-compiled
composer dump-autoload

这对我没有帮助,请看截图:

帮帮我。谢谢!

【问题讨论】:

【参考方案1】:

这是因为工匠在epins 表中找不到flag

有解决办法,

从 phpmyadmin 显式添加flagcolumn(如果您使用的是 mysql)然后尝试回滚

希望这个方法有效,如有疑问请询问

【讨论】:

太好了,别忘了把它标记为答案,所以它也可以帮助其他人【参考方案2】:

请尝试从数据库中删除表,修改迁移文件并将下拉功能添加到向下功能并再次迁移。

【讨论】:

你的意思是我需要删除整个迁移文件?或仅add_flag_to_epins_table。当我添加列时。 转到您的 phpmyadmin 并手动添加标志列。 ALTER TABLE epins ADD flag boolean

以上是关于工匠迁移:laravel 5.3 中的回滚错误的主要内容,如果未能解决你的问题,请参考以下文章

Laravel Php 工匠制作迁移错误

Laravel Migrations 出现异常错误

工匠迁移结果:SQLSTATE [HY000]:一般错误:LUMEN / LARAVEL 上的 1005

Laravel 5.2 工匠“迁移”不起作用

Laravel 5.7 工匠迁移

Php工匠迁移失败Laravel [重复]