【发布时间】:2013-06-11 02:43:50
【问题描述】:
我正在尝试回滚我的迁移。
我的迁移文件使用这样的外键
$table->foreign('user_one')->references('id')->on('users');
$table->foreign('user_two')->references('id')->on('users');
我的 down() 函数是这样的
public function down()
{
Schema::drop('pm_convo');
Schema::drop('pm_convo_replys');
}
当我运行迁移命令时
php artisan migrate:refresh --seed --env=local
我收到以下错误
SQLSTATE[23000]: Integrity constraint violation: 1217 Cannot delete or update a parent row: a foreign key constraint fails (SQL: drop table `pm_convo`)
我不确定如何解决这个问题。
编辑:
我试过了:$table->dropForeign('pm_convo_user_one_foreign');
但是我也遇到了错误
【问题讨论】:
-
您是否有另一个表具有引用
pm_convo的外键? -
是的,我愿意.. 有一个名为 pm_convo_replys 的表具有 $table->foreign('c_id_fk')->references('id')->on('pm_convo');
-
在这种情况下,将两个
drop调用转过来。 -
你在开玩笑哈哈哈我已经搜索了好几个小时...谢谢!!!!