gpt4 book ai didi

laravel - 外键不匹配 - "password_resets"在 dropColumn 上引用 "users"

转载 作者:行者123 更新时间:2023-12-05 07:09:31 25 4
gpt4 key购买 nike

我正在尝试通过迁移在“用户”表上删除一列(我们称之为 fooboo),但出现下一个错误:

General error: 1 foreign key mismatch - "password_resets" referencing "users" (SQL: INSERT INTO users (id, name, email, password, fooboo, created_at, updated_at) SELECT id, name, email, password, fooboo, created_at, updated_at FROM __temp__users)

迁移类中的up()函数:


public function up()
{
Schema::table('users', function (Blueprint $table) {
$table->dropColumn('fooboo');
});
}

特别是此列没有任何索引、FK 或任何可能产生冲突的内容。它只是一个具有默认值 FALSE 的 bool 值。

在运行单元测试 (phpunit) 时,sqlite 出现此错误。我不能仅仅删除创建它的迁移类上的列来解决这个问题,我需要一个新的迁移才能在生产服务器上运行。

询问我们的 friend google,我只能找到与 missing migrations 相关的错误,但我不是这种情况。

最佳答案

你可以在最开始添加这一行:

Schema::disableForeignKeyConstraints();

最后在最后添加这一行:

Schema::enableForeignKeyConstraints();

这将禁用您的外键约束。

关于laravel - 外键不匹配 - "password_resets"在 dropColumn 上引用 "users",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61520663/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com