无法在现有表上删除外键?

我正在尝试使用迁移将外键拖放到现有表中,但是它会引发错误,例如“语法错误或访问冲突:1091无法删除DROP consultant_id:检查列/键是否存在”。你能帮忙吗?

cqcywyx 回答:无法在现有表上删除外键?

首先,您必须删除“外部约束”。

public function up() {
       Schema::table('table_name',function (Blueprint $table) {
            $table->dropForeign('table_name_consultant_id_foreign');
            $table->dropColumn('consultant_id');
        });

    }
,

在删除表之前先禁用外键检查,然后再启用

DB::statement('SET FOREIGN_KEY_CHECKS=0;');
Schema::dropIfExists('your_choice_table');
DB::statement('SET FOREIGN_KEY_CHECKS=1;');
本文链接:https://www.f2er.com/3126038.html

大家都在问