Php SQLSTATE[23000]:完整性约束冲突:1062重复项
关于我的更新,我有一个问题,如果我有1行数据,我的更新工作,但如果我有2行数据,我得到这个问题 SQLSTATE[23000]:完整性约束冲突:1062重复条目2主 myController.phpPhp SQLSTATE[23000]:完整性约束冲突:1062重复项,php,laravel,eloquent,Php,Laravel,Eloquent,关于我的更新,我有一个问题,如果我有1行数据,我的更新工作,但如果我有2行数据,我得到这个问题 SQLSTATE[23000]:完整性约束冲突:1062重复条目2主 myController.php public function update(Partner $partner) { $partner->update(array_except(Input::all(), '_token')); } 知道问题出在哪里吗?我自己也遇到了这个问题。根据此处的文档: 在重复键更新时,如
public function update(Partner $partner) {
$partner->update(array_except(Input::all(), '_token'));
}
知道问题出在哪里吗?我自己也遇到了这个问题。根据此处的文档: 在重复键更新时,如果将行作为新行插入,则每行受影响的行值为1,如果更新现有行,则每行受影响的行值为2 o执行查询时,如果插入了新记录,则返回其ID。如果记录已存在,则更新现有记录。如果由于所有值都匹配而不需要更新,则返回一个ID,修改的行数为0。但是,如果更新记录,则返回ID,修改的行数为2。密钥持有者假设两行已被修改(即使只有一行已被修改),并且错误地返回ID加上下一个顺序ID(即ID加1)。
我将查询更改为
public function UpdateItems(Item$updateitem,$Item\u id){
$sname=Input::get('subcategory');
$subname=ItemSubcategory::where('name',$sname)->first();
$input=input::除了(“U标记”);
$updateitem->where('item\u id',$item\u id)
->更新($input,['subcategory'=>$subname->id]);
}
现在我的代码正在运行,但我有一个小问题。除了子类别
列之外,所有列都可以更新。现在我的问题是,是否可以使用
update($input, ['subcategory' => $subname->id])
或者有没有办法更新子类别 我找到了一个解决方案,它不合适,但它起了作用。我刚刚为子类别添加了另一个更新查询
Item::whereItem_id($item_id)->update($input);
Item::whereItem_id($item_id)->update(['subcategory' => $subname->id]);
在AI专栏的某个地方,要么有外键问题,要么有限制。您也可以尝试插入。。。在重复密钥更新时-用谷歌搜索错误,还有其他可能的原因。您是否可以为合作伙伴发布迁移文件?你也可以发布你的输入数组吗?