- 此问题在此处已有答案**:
laravel Eloquent ORM delete() method(7个答案)
昨天关门了。
我在Laravel中进行测试,我想截断所有用户,只创建一个。此代码显示错误SQLSTATE[42000]: Syntax error or access violation: 1701 Cannot truncate a table referenced in a foreign key constraint
。我可以做什么来截断用户?只是我不想使用违反数据库设置的解决方案,例如Schema::disableForeignKeyConstraints();
public function test_delete_user()
{
DB::table('users')->truncate();
$role = User::factory()->create();
.......
}
3条答案
按热度按时间6g8kf2rb1#
您的表用户有一个外键约束,要删除它才能使截断工作。
我能看看数据库模式吗?
这是给MysQl的在你桌上试试
bt1cpqcv2#
使用前
您可以尝试使用(假设您的外表名为"addresses")
可能会对你有帮助。然后看起来
oaxa6hgo3#
$user =用户::查找($id);
$用户-〉删除();
如果您不使用SoftDeletingTrait特性或
$user =用户::查找($id);
$user-〉强制删除();