最近项目中有一个key:value数据表
在实现使用表单提交,模型更新的时候出现下面的错误:
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry ‘Partner_ID’ for key ‘PRIMARY’
数据表的字段:name、value;无主键
当从前端表格提交的数据更新数据表中的字段,尝试使用saveAll、update等方法,都提示需要主键,我这里采用foreach遍历更新,代码如下:
$param = $this->request->param();
foreach ($param as $k => $v) {
//$data[] = ['name' => $k, 'value' => $v];
$s = System::where('name', $k)->find();
$s->value = $v;
$result = $s->save();
if(!$result){
break;
}
}
暂时还没有好的方法,找到后立即更新
Comments